home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.hitl.washington.edu
/
ftp.hitl.washington.edu.tar
/
ftp.hitl.washington.edu
/
pub
/
people
/
tsoper
/
CT Explorer
/
bin
/
Debug
/
Bluebit.MatrixLibrary.xml
< prev
next >
Wrap
Extensible Markup Language
|
2005-03-17
|
362KB
|
8,989 lines
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<doc>
<assembly>
<name>Bluebit.MatrixLibrary</name>
</assembly>
<members>
<member name="N:Bluebit.MatrixLibrary">
<summary>The Bluebit.MatrixLibrary namespace contains
classes for representing and manipulating real and complex matrices
and vectors.</summary>
<remarks> The
Bluebit.MatrixLibrary namespace contains the
Matrix and
Vector classes for representing real
matrices and vectors and their complex
equivalents
CMatrix and
CVector for complex matrices and vectors.
Additionally, it contains the
Cholesky,
LQ,
LU,
QR,
SVD
classes for factoring real matrices and the
CCholesky,
CLQ,
CLU,
CQR,
CSVD classes for complex matrices respectively.
The
Eigen and
CEigen classes are used for the
eigenvalues and eigenvectors
calculations of general matrices, at the same time as
SymEigen for symmetric and
CSymEigen for hermitian matrices.</remarks>
</member>
<member name="T:Bluebit.MatrixLibrary.BalanceType">
<summary>Indicates how the input matrix should be diagonally scaled
and/or permuted to improve the conditioning of its
eigenvalues.</summary>
<remarks> BalanceType enumeration is used in
Eigen and
CEigen constructor in order to indicate the type of
balancing that will be used.</remarks>
</member>
<member name="F:Bluebit.MatrixLibrary.BalanceType.Both">
<summary>Both diagonally scale and permute.</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.BalanceType.Scale">
<summary>Diagonally scale the matrix to make its rows and columns more
equal in norm. Do not permute.</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.BalanceType.Permute">
<summary>Perform permutations to make the matrix more nearly upper
triangular. Do not diagonally scale.</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.BalanceType.None">
<summary>Do not diagonally scale or permute.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.NormalizeMode">
<summary>Indicates the normalization type during matrix columns or
rows normalization.</summary>
<remarks>NormalizeMode enumeration is used in
NormalizeCols, NormalizeRows
member functions to specify the normalization style.</remarks>
</member>
<member name="F:Bluebit.MatrixLibrary.NormalizeMode.ZScores">
<summary>Normalizes columns or rows to zscores (values having zero
mean and unit standard deviation).</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.NormalizeMode.UnitLength">
<summary>Normalizes columns or rows so that they become unit length
vectors (their sum of squares is 1).</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.NormalizeMode.MaximumOne">
<summary>Normalizes columns or rows so that their biggest element is
1.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.NormType">
<summary>Specifies the norm value to be returned by the
Norm member function.</summary>
<remarks>NormType enumeration is used to specify the
norm to be returned by the Norm member function of
the Matrix and CMatrix classes.</remarks>
</member>
<member name="F:Bluebit.MatrixLibrary.NormType.FrobeniusNorm">
<summary>Frobenius norm of the matrix or vector (square root of sum of
squares).</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.NormType.InfinityNorm">
<summary>Infinity norm of the matrix (maximum row sum).</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.NormType.OneNorm">
<summary>1-norm of the matrix (maximum column sum).</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.NormType.MaxAbsValue">
<summary>The element of largest absolute value of the matrix.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.SortOrder">
<summary>SortOrder enumeration specifies the order in
SortRows,
SortCols methods.</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.SortOrder.Descending">
<summary>Sort in descending order.</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.SortOrder.Ascending">
<summary>Sort in ascending order.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.StorageOrder">
<summary>Specifies how a one-dimensional array will be used to fill
the elements of the constructed matrix.</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.StorageOrder.ColumnMajor">
<summary>Fill matrix in column major order (column by column).</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.StorageOrder.RowMajor">
<summary>Fill matrix in row major order (row by row).</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.Complex">
<summary>The Complex structure represents a complex
number.</summary>
<remarks>Double-precision floating point numbers are used to store the
real and the imaginary part.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex._ctor">
<summary>Initializes a new instance of the
Complex
structure.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex._ctor">
<summary>Initializes a new instance of the
Complex
structure setting both its real and imaginary part to zero.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex._ctor(System.Double)">
<summary>Initializes a new instance of the
Complex
structure setting its real part to the specified value and its
imaginary part to zero.</summary>
<param name="real">The real part of the complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex._ctor(System.Double,System.Double)">
<summary>Initializes a new instance of the
Complex
structure setting both its real and imaginary parts to the
specified values.</summary>
<param name="real">The real part of the complex number.</param>
<param name="imag">The imaginary part of the complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex._ctor(System.Single)">
<summary>Initializes a new instance of the
Complex
structure setting its real part to the specified value and its
imaginary part to zero.</summary>
<param name="real">The real part of the complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex._ctor(System.Single,System.Single)">
<summary>Initializes a new instance of the
Complex
structure setting both its real and imaginary parts to the
specified values.</summary>
<param name="real">The real part of the complex number.</param>
<param name="imag">The imaginary part of the complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Abs">
<summary>Returns the absolute value of the complex number.</summary>
<returns>The absolute value value of the complex number.</returns>
<remarks>The absolute value of a complex number equals to the square
root of the sum of the squares of its real and imaginary
part.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Add">
<summary>Adds complex numbers.</summary>
<returns>The
complex
number resulted from the addition.</returns>
<remarks>Add method is an alias for the addition operator.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Add(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Returns the sum of two complex numbers.</summary>
<returns>The sum a+b.</returns>
<param name="a">A complex number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Add(Bluebit.MatrixLibrary.Complex,System.Double)">
<summary>Returns the sum of complex number with a real number.</summary>
<returns>The sum a+b.</returns>
<param name="a">A complex number.</param>
<param name="b">A real number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Conjugate">
<summary>Returns the conjugate of this complex number.Returns the
conjugate of a complex number</summary>
<returns>The conjugate of the complex number.</returns>
<remarks>The complex conjugate of a+bi is a-bi.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Conjugate">
<summary>Returns the conjugate of this complex number.</summary>
<returns>A
Complex
representing the conjugate of the current complex number.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Conjugate(Bluebit.MatrixLibrary.Complex)">
<summary>Returns the conjugate of the specified complex number.</summary>
<returns>A
Complex
representing the conjugate of the specified complex number.</returns>
<param name="c">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Cos(Bluebit.MatrixLibrary.Complex)">
<summary>Returns the cosine of a complex number.</summary>
<returns>A
Complex
representing the cosine of c.</returns>
<param name="c">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Cosh(Bluebit.MatrixLibrary.Complex)">
<summary>Returns the hyperbolic cosine of a complex number</summary>
<returns>A
Complex
representing the hyperbolic coshine of c.</returns>
<param name="c">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Divide">
<summary>Performs division with complex numbers.</summary>
<remarks> The computation of a/b will not overflow on an
intermediary step unless the results overflows.
This method is an alias for the division operator.</remarks>
<returns>A complex number resulted from the division.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Divide(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Divides a complex number by another.</summary>
<returns>The quotient a/b.</returns>
<param name="a">A complex number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Divide(Bluebit.MatrixLibrary.Complex,System.Double)">
<summary>Divides a complex number by a real number.</summary>
<returns>The quotient a/b.</returns>
<param name="a">A complex number.</param>
<param name="b">A real number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Divide(System.Double,Bluebit.MatrixLibrary.Complex)">
<summary>Divides a real number by a complex number.</summary>
<returns>The quotient a/b.</returns>
<param name="a">A real number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Equals(System.Object)">
<summary>Indicates whether this instance of the complex structure and
the specified complex are equal.</summary>
<returns>true if obj parameter is a complex
structure and contains the same value as this instance.</returns>
<param name="obj">Another complex to compare to.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.FromDouble(System.Double)">
<summary>Converts a
double real number to a
Complex
structure.</summary>
<returns>A
Complex
structure equal to the real number.</returns>
<param name="a">The real number to convert.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.GetHashCode">
<summary>Returns the hash code of the current
ShortParentItemName. Returns the hash code for this
instance</summary>
<returns>A 32-bit signed integer that is the hash code for this
instance.A 32-bit signed integer that represents the hash
code.</returns>
<remarks>This method overrides Object.GetHashcode and
generates the same hash code for two objects that are equal
according to the Equals method.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.IsInfinity(Bluebit.MatrixLibrary.Complex)">
<summary>Returns a value indicating whether the specified complex
number evaluates to an infinity value.</summary>
<returns>true if either the real or imaginary part
evaluates to positive or negative infinity; otherwise
false.</returns>
<param name="c">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.IsNaN(Bluebit.MatrixLibrary.Complex)">
<summary>Returns a value indicating whether the specified complex
number evaluates to a value that is not a number.</summary>
<returns>true if either the real or complex part
evaluates to System.Double.NaN; otherwise
false.</returns>
<remarks>Floating-point operations return System.Double.NaN to
signal that that result of the operation is undefined. For example,
dividing 0.0 by 0.0 results in NaN.</remarks>
<param name="c">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Multiply">
<summary>Multiplies complex numbers</summary>
<remarks>This method is an alias for the multiply operator.</remarks>
<returns>The complex number resulted from the multiplication.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Multiply(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Multiplies two complex numbers.</summary>
<returns>The product a*b.</returns>
<param name="a">A complex number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Multiply(Bluebit.MatrixLibrary.Complex,System.Double)">
<summary>Multiplies a complex number by a real number.</summary>
<returns>The product a*b.</returns>
<param name="a">A complex number.</param>
<param name="b">A real number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Negate(Bluebit.MatrixLibrary.Complex)">
<summary>Negates a complex number.</summary>
<returns>The negation of a.</returns>
<remarks>This method is an alias for the unary negation
operator.</remarks>
<param name="a">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Addition">
<summary>Returns the sum of two complex numbers or the sum of complex
numbers with real numbers.</summary>
<returns>A complex number as the result of the addition.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Addition(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Returns the sum of two complex numbers.</summary>
<returns>The sum a+b.</returns>
<param name="a">A complex number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Addition(Bluebit.MatrixLibrary.Complex,System.Double)">
<summary>Returns the sum of a complex number and a real number.</summary>
<returns>The sum a+b.</returns>
<param name="a">A complex number.</param>
<param name="b">A real number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Addition(System.Double,Bluebit.MatrixLibrary.Complex)">
<summary>Returns the sum of a real number and a complex.</summary>
<returns>The sum a+b.</returns>
<param name="a">A real number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Division">
<summary>Performs division with complex numbers.</summary>
<returns>A complex number resulted from the division.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Division(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Divides a complex number by another.</summary>
<returns>The quotient a/b.</returns>
<param name="a">A complex number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Division(Bluebit.MatrixLibrary.Complex,System.Double)">
<summary>Divides a complex number by a real number.</summary>
<returns>The quotient a/b.</returns>
<param name="a">A complex number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Division(System.Double,Bluebit.MatrixLibrary.Complex)">
<summary>Divides a complex number by a real number.</summary>
<returns>The quotient a/b.</returns>
<param name="a">A real number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Equality(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Tests whether two complex numbers are equal.</summary>
<returns>true if complex numbers are equal; otherwise
false.</returns>
<param name="a">The complex number on the left side of the equality
operator.</param>
<param name="b">The complex number on the right side of the equality
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Implicit(System.Double)">
<summary>Converts a
double to a
complex.</summary>
<returns>A complex number.</returns>
<param name="a">A double value to convert.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Inequality(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Tests whether two
Complex
structures are not equal.</summary>
<returns>true if complex numbers are not equal;
otherwise false.</returns>
<param name="a">The complex number on the left side of the equality
operator.</param>
<param name="b">The complex number on the right side of the equality
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Multiply">
<summary>Multiplies complex numbers.</summary>
<returns>A complex number.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Multiply(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Multiplies two complex numbers.</summary>
<returns>The product a*b.</returns>
<param name="a">A complex number.</param>
<param name="b">A complex number</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Multiply(Bluebit.MatrixLibrary.Complex,System.Double)">
<summary>Multiplies a complex number by a real number.</summary>
<returns>The product a*b.</returns>
<param name="a">A complex number.</param>
<param name="b">A real number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Multiply(System.Double,Bluebit.MatrixLibrary.Complex)">
<summary>Multiplies a real number by a complex.</summary>
<returns>The product a*b</returns>
<param name="a">A real number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Subtraction">
<summary>Subtracts complex numbers.</summary>
<returns>A complex number.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Subtraction(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Subtracts a complex number from another.</summary>
<returns>The result of subtracting a-b.</returns>
<param name="a">A complex number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Subtraction(Bluebit.MatrixLibrary.Complex,System.Double)">
<summary>Subtracts a real number from a complex number.</summary>
<returns>The result of subtracting a-b.</returns>
<param name="a">A complex number.</param>
<param name="b">A real number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_Subtraction(System.Double,Bluebit.MatrixLibrary.Complex)">
<summary>Subtracts a complex number from a real number.</summary>
<returns>The result of subtracting a-b.</returns>
<param name="a">A real number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_UnaryNegation(Bluebit.MatrixLibrary.Complex)">
<summary>Negates a complex number.</summary>
<returns>The negation of a.</returns>
<param name="a">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.op_UnaryPlus(Bluebit.MatrixLibrary.Complex)">
<summary>Returns the value of the complex number.</summary>
<param name="a">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Plus(Bluebit.MatrixLibrary.Complex)">
<summary>Returns the value of the complex number.</summary>
<param name="a">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Reciprocal">
<summary>Returns the reciprocal of the complex number.Returns the
reciprocal of a complex number.</summary>
<returns>The reciprocal of the complex number.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Reciprocal">
<summary>Returns the reciprocal of this complex number.</summary>
<returns>A
Complex
representing the reciprocal of the current complex number.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Reciprocal(Bluebit.MatrixLibrary.Complex)">
<summary>Returns the reciprocal of the specified complex
number.</summary>
<returns>A
Complex
representing the reciprocal of c.</returns>
<param name="c">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Sin(Bluebit.MatrixLibrary.Complex)">
<summary>Returns the sine of a complex number.</summary>
<returns>A
Complex
representing the sine of c.</returns>
<param name="c">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Sinh(Bluebit.MatrixLibrary.Complex)">
<summary>Returns the hyperbolic sine of a complex number.</summary>
<returns>A
Complex
representing the hyperbolic sine of c.</returns>
<param name="c">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Sqrt">
<summary>Returns the square root of the complex number.Returns the
square root of a complex number.</summary>
<returns>The square root of the complex number.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Sqrt">
<summary>Returns the square root of this complex number.</summary>
<returns>A
Complex
representing the square root of the current complex number.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Sqrt(Bluebit.MatrixLibrary.Complex)">
<summary>Returns the square root of the specified complex
number.</summary>
<returns>A
Complex
representing the square root of c.</returns>
<param name="c">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Subtract">
<summary>Subtracts complex numbers.</summary>
<remarks>This method is an alias for the subtraction operator.</remarks>
<returns>A complex number</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Subtract(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Subtracts a complex number from another.</summary>
<returns>The result of subtracting a-b.</returns>
<param name="a">A complex number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Subtract(Bluebit.MatrixLibrary.Complex,System.Double)">
<summary>Subtracts a real number from a complex number.</summary>
<returns>The result of subtracting a-b.</returns>
<param name="a">A complex number.</param>
<param name="b">A real number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.Subtract(System.Double,Bluebit.MatrixLibrary.Complex)">
<summary>Subtracts a complex number from a real number.</summary>
<returns>The result of subtracting a-b.</returns>
<param name="a">A real number.</param>
<param name="b">A complex number.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.ToString">
<summary>Returns a string representing the complex number.</summary>
<returns>A string representation of the complex number in the form
(a,bi) where a and b are the real and imaginary parts
respectively.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.ToString">
<summary>Returns a string representing the complex number.</summary>
<returns>A string representation of the complex number in the form
(a,bi) where a and b are the real and imaginary parts
respectively.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.ToString(System.IFormatProvider)">
<summary>Returns a string representing the complex number using the
specified culture-specific formatting information.</summary>
<returns>A string representation of the complex number in the form
(a,bi) where a and b are the real and imaginary parts
respectively.</returns>
<param name="provider"> An
IFormatProvider that supplies culture-specific formatting
information.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.ToString(System.String)">
<summary>Returns a string representing the complex number using the
specified format.</summary>
<returns>A string representation of the complex number in the form
(a,bi) where a and b are the real and imaginary parts
respectively.</returns>
<param name="format">A
String containing a format specification.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Complex.ToString(System.String,System.IFormatProvider)">
<summary>Returns a string representing the complex number using the
specified format and the culture-specific formatting
information.</summary>
<returns>A string representation of the complex number in the form
(a,bi) where a and b are the real and imaginary parts
respectively.</returns>
<param name="format">A
String containing a format specification.</param>
<param name="provider"> An
IFormatProvider that supplies culture-specific formatting
information.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.Complex.Imag">
<summary>The imaginary part of the complex number.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Complex.Real">
<summary>The real part of the complex number.</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.Complex.One">
<summary>A constant representing a complex number equal to 1.</summary>
</member>
<member name="F:Bluebit.MatrixLibrary.Complex.Zero">
<summary>A constant representing a complex number equal to
zero.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.CCholesky">
<summary>Represents a Cholesky factorization of a
complex Hermitian positive-definite matrix.</summary>
<remarks>Cholesky factorization is possible for
Hermitian positive-definite matrices (using the
CCholesky Class) and symmetric positive-definite matrices
(using the
Cholesky Class).</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CCholesky._ctor(Bluebit.MatrixLibrary.CMatrix)">
<summary>Initializes a new instance of the
CCholesky class computing the Cholesky
factorization of a complex Hermitian positive-definite
matrix.</summary>
<remarks> The
Succeeded property indicates whether the factorization has
completed successfully. It will return false
if the matrix parameter does not represent a
positive-definite matrix.
Only the lower triangular part of the matrix is
referenced during factorization and no check is made that the
matrix is actually an Hermitian matrix.</remarks>
<param name="matrix">A
CMatrix
object containing the complex Hermitian positive-definite matrix to
factor.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CCholesky.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CCholesky.Inverse">
<summary>Returns the inverse of a complex Hermitian positive-definite
matrix using its Cholesky factorization.</summary>
<returns>A
CMatrix
object containing the inverse of the factored matrix.</returns>
<remarks>This method will return a null reference
(Nothing in Visual Basic) if the
Cholesky factorization could not be completed (if
Succeeded property returns false).</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CCholesky.Solve(Bluebit.MatrixLibrary.CMatrix)">
<summary>Solves a system of linear equations using the
Cholesky factorization of a complex Hermitian
positive-definite matrix.</summary>
<returns>A
CMatrix
object that contains the solution of the system of linear
equations.</returns>
<remarks> The Solve method finds the solution to
the system of linear equations
AΓÇóX = B
where:
A denotes the complex Hermitian
positive-definite matrix that has been previously factored
(represented now by its Cholesky
factorization).
B denotes the matrix whose columns
contain the right hand terms.
X denotes the solution matrix that is to
be computed.
The system can be solved with multiple right-hand sides
stored in the columns of the matrix B.</remarks>
<param name="rightHands">A
CMatrix
object containing the right-hand sides for the system of linear
equations.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CCholesky.L">
<summary>Gets the factor L, the lower triangular part of the
Cholesky factorization.</summary>
<remarks> Lproperty returns the lower triangular
part of the Cholesky factorizations that
satisfies the relation A =
LΓÇóLH,
where LH
denotes the conjugate transpose (adjoint) of the
L matrix.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CCholesky.Size">
<summary>Gets the size of the matrix that is represented by the
factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CCholesky.Succeeded">
<summary>Indicates whether the Cholesky factorization
succeeded and has reached completion.</summary>
<remarks>Check the Succeded property before using the
factorization for further computations.</remarks>
</member>
<member name="T:Bluebit.MatrixLibrary.CEigen">
<summary> The
CEigen class is used to compute the
eigenvalues and the left and/or right
eigenvectors of a general square complex
matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CEigen._ctor">
<summary>Initializes a new instance of the
CEigenclass
computing the eigen decomposition of a general square complex
matrix.Creates a new instance of the
CEigen
class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CEigen._ctor(Bluebit.MatrixLibrary.CMatrix)">
<summary>Creates a new instance of the
CEigen
class, computing the eigenvalues and the right eigenvectors of a
general square complex matrix, with preliminary matrix
balancing.</summary>
<remarks>Only the right eigenvectors are computed if this constructor
is used; the
LeftEigenvector,
LeftEigenvectors properties will return a null
reference (Nothing in Visual Basic).</remarks>
<param name="matrix">A
CMatrix
object representing the complex square matrix whose eigenvalues and
right eigenvectors are to be computed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CEigen._ctor(Bluebit.MatrixLibrary.CMatrix,System.Boolean)">
<summary>Creates a new instance of the
CEigen
class computing the eigenvalues and optionally the right
eigenvectors of a general square complex matrix, with preliminary
matrix balancing.</summary>
<remarks>Using a false value for the
rightEigenvectors parameter allows you to calculate only
the eigenvalues in cases where the eigenvectors are not
needed.</remarks>
<param name="matrix">A
CMatrix
object representing the complex square matrix whose eigenvalues and
optionally its right eigenvectors are to be computed.</param>
<param name="rightEigenvectors">A
boolean value specifying whether the right eigenvectors will be
computed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CEigen._ctor(Bluebit.MatrixLibrary.CMatrix,System.Boolean,System.Boolean)">
<summary>Creates a new instance of the
CEigen
class computing the eigenvalues and optionally the right and/or the
left eigenvectors of a general square complex matrix, with
preliminary matrix balancing.</summary>
<remarks>This constructor allows you to specify which of the right
and/or left eigenvectors will be computed.</remarks>
<param name="matrix">A
CMatrix
object representing the complex square matrix whose eigenvalues and
optionally its right and/or left eigenvectors are to be
computed.</param>
<param name="rightEigenvectors">A
boolean value specifying whether the right eigenvectors will be
computed.</param>
<param name="leftEigenvectors">A
boolean value specifying whether the left eigenvectors will be
computed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CEigen._ctor(Bluebit.MatrixLibrary.CMatrix,System.Boolean,System.Boolean,Bluebit.MatrixLibrary.BalanceType)">
<summary>Creates a new instance of the
CEigen
class computing the eigenvalues and optionally the right and/or the
left eigenvectors of a general square complex matrix, using the
specified type of preliminary matrix balancing.</summary>
<remarks> Balancing a matrix means permuting its rows and columns
to make it more nearly upper triangular, and applying
similarity transformations to make its rows and columns closer
in norm.
Generally balancing improves the accuracy of the
computations. However, there are cases that a matrix contains
near to zero elements that are due to roundoff errors. If
balancing is used, those elements may become the same
significant as others leading to incorrect eigenvectors. To
avoid such a situation set the balance parameter to
false.</remarks>
<param name="matrix">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.CMatrix.html">CMatrix
object representing the complex square matrix whose eigenvalues and
optionally its right and/or left eigenvectors are to be
computed.</param>
<param name="rightEigenvectors">A
boolean value specifying whether the right eigenvectors will be
computed.</param>
<param name="leftEigenvectors">A
boolean value specifying whether the left eigenvectors will be
computed.</param>
<param name="balance">A
BalanceType enumeration specifying whether preliminary
balancing will be used and the type of balancing.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CEigen.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CEigen.D">
<summary>Gets a complex diagonal matrix, containing all the computed
eigenvalues in its main diagonal.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CEigen.Eigenvalue(System.Int32)">
<summary>Gets the specified eigenvalue.</summary>
<param name="index">A zero-based index specifying the eigenvalue to
return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CEigen.Eigenvalues">
<summary>Returns a vector containing all the computed
eigenvalues.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CEigen.Eigenvector(System.Int32)">
<summary>Gets the specified right eigenvector.</summary>
<remarks>If the rightEigenvectors parameter of the
CEigen
class constructor is set to false, the right
eigenvectors are not calculated and Eigenvector
property returns a null reference
(Nothing in Visual Basic).</remarks>
<param name="index">An index specifying the eigenvector to return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CEigen.Eigenvectors">
<summary>Gets the right eigenvectors matrix.</summary>
<remarks>If the rightEigenvectors parameter of the
CEigen
class constructor is set to false, the right
eigenvectors are not calculated and the
Eigenvectors property returns a
null reference (Nothing in Visual
Basic).</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CEigen.LeftEigenvector(System.Int32)">
<summary>Gets the specified left eigenvector.</summary>
<remarks>If the leftEigenvectors parameter of the
CEigen
class constructor is set to false, the left
eigenvectors are not calculated and the
Eigenvector property returns a
null reference (Nothing in Visual
Basic).</remarks>
<param name="index">An index specifying the eigenvector to return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CEigen.LeftEigenvectors">
<summary>Gets the left eigenvectors matrix.</summary>
<remarks>If the leftEigenvectors parameter of the
CEigen
class constructor is set to false, the left
eigenvectors are not calculated and the
LeftEigenvectors property returns a
null reference (Nothing in Visual
Basic).</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CEigen.Size">
<summary>Gets the size of matrix that is represented by this eigen
decomposition.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CEigen.Succeded">
<summary>Indicates whether the eigenvalues-eigenvectors calculation
succeeded to completion.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.Cholesky">
<summary>Represents a Cholesky factorization of a
real symmetric positive-definite matrix.</summary>
<remarks>Cholesky factorization is possible for
Hermitian positive-definite matrices (using the
CCholesky Class) and symmetric positive-definite matrices
(using the
Cholesky Class).</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Cholesky._ctor(Bluebit.MatrixLibrary.Matrix)">
<summary>Initializes a new instance of the
Cholesky class computing the Cholesky
factorization of a real symmetric positive-definite matrix.</summary>
<remarks> The
Succeeded property indicates whether the factorization has
completed succesfully. It will return false if
the matrix parameter does not represent a
positive-definite matrix.
Only the lower triangular part of the matrix is
referenced during factorization and no check is made that the
matrix is actually a symmetric matrix.</remarks>
<param name="matrix">A
Matrix
object containing the real symmetric positive-definite matrix to
factor.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Cholesky.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Cholesky.Inverse">
<summary>Returns the inverse of a real symmetric positive-definite
matrix using its Cholesky factorization.</summary>
<returns>A
Matrix
object containing the inverse of the factored matrix.</returns>
<remarks>This method will return a null reference
(Nothing in Visual Basic) if the Cholesky
factorization could not be completed (if
Succeeded property returns false)</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Cholesky.Solve(Bluebit.MatrixLibrary.Matrix)">
<summary>Solves a system of linear equations using the
Cholesky factorization of a real symmetric
positive-definite matrix.</summary>
<returns>A
Matrix
object that contains the solution of the system of linear
equations.</returns>
<remarks> The Solve method finds a solution to the
system of linear equations
AΓÇóX = B
where:
A denotes the real symmetric
positive-definite matrix that has been previously factored
(represented now by its Cholesky
factorization).
B denotes the matrix whose columns
contain the right hand terms.
X denotes the solution matrix that
is to be computed.
The system can be solved with multiple right-hand
sides stored in the columns of the matrix
B.
</remarks>
<param name="rightHands">A
Matrix
object containing the right-hand sides for the system of linear
equations.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.Cholesky.L">
<summary>Gets the factor L, the lower triangular part of the
Cholesky factorization.</summary>
<remarks> L property returns the lower triangular
part of the Cholesky factorizations that satisfies the relation
A = L *
LT , where
LT denotes
the transpose of the L matrix.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.Cholesky.Size">
<summary>Gets the size of the matrix that is represented by the
factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Cholesky.Succeeded">
<summary>Indicates whether the Cholesky factorization
succeeded and has reached completion.</summary>
<remarks>Check the Succeded property before using the
factorization for further computations.</remarks>
</member>
<member name="T:Bluebit.MatrixLibrary.CLQ">
<summary>Represents an LQ factorization of a general
complex matrix.</summary>
<remarks>The
CLQ
class can be used to find the minimum-norm solution of an
underdetermined least-squares problem.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CLQ._ctor(Bluebit.MatrixLibrary.CMatrix)">
<summary>Initializes a new instance of the
CLQ
class computing the LQ factorization of a general
complex matrix.</summary>
<param name="matrix">A
CMatrix
object containing the matrix to factor.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CLQ.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CLQ.Solve(Bluebit.MatrixLibrary.CMatrix)">
<summary>Solves an underdetermined system of linear equations using
the LQ factorization of a complex matrix.</summary>
<returns>A
CMatrix
object that contains the solution of the system of linear
equations.</returns>
<remarks> The Solve method finds a solution to the
system of linear equations
AΓÇóX = B
where:
A denotes the complex matrix that
has been previously factored (represented now by its
LQ factorization).
B is the matrix whose columns
contain the right hand terms.
X is the solution matrix that is to
be computed.
The system can be solved with multiple right-hand
sides stored in the columns of the matrix
B. The columns of X are
the minimum norm solution vectors.
</remarks>
<param name="rightHands">A
CMatrix
object containing the right-hand sides for the system of linear
equations.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CLQ.Cols">
<summary>Gets the number of columns of the matrix that is represented
by the factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CLQ.L">
<summary>Gets the factor L, the lower triangular
matrix of the LQ factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CLQ.Q">
<summary>Gets the factor Q, the orthogonal matrix of
the LQ factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CLQ.Rows">
<summary>Gets the number of rows of the matrix that is represented by
the factorization.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.CLU">
<summary>Represents an LU factorization of a general
complex matrix.</summary>
<remarks> The LU factorization of a general m
by n matrix is formed as A =
PΓÇóLΓÇóU where
P is a permutation matrix, L
is lower triangular with unit diagonal elements (lower
trapezoidal if m>n) and U is upper
triangular (upper trapezoidal if m<n).
The
CLU
class can be used to solve systems of linear equations and to
calculate the inverse of a matrix.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CLU._ctor(Bluebit.MatrixLibrary.CMatrix)">
<summary>Initializes a new instance of the
CLU
class computing the LU factorization of a general
complex matrix.</summary>
<remarks>CLU
constructor never fails. The
IsSingular property indicates whether the matrix has been found
to be singular.</remarks>
<param name="matrix">A
CMatrix
object containing the matrix to factor.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CLU.Determinant">
<summary>Returns the determinant of a square complex matrix using its
LU factorization.</summary>
<returns>A
Complex
that equals to the determinant of the matrix.</returns>
<remarks>Determinant can be calculated only for a square
matrix.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CLU.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CLU.GetPivots">
<summary>Gets an array of integers containing the pivot
indices.</summary>
<remarks> If Pivots() is the array returned from GetPivots method,
then Pivots(i) = k denotes that during factorization row k has
moved to row i.
The array that is returned from
GetPivots property can be used as a parameter
in
ReorderRows method in order to reconstruct the original
matrix.
This has the same effect as multiplying by the
P matrix but it executes faster.</remarks>
<returns>An array of type
Integer.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CLU.Inverse">
<summary>Returns the inverse of a square complex matrix using its
LU factorization.</summary>
<returns>A
CMatrix
object containing the inverse of the factored matrix.</returns>
<remarks>Matrix inverse can be calculated only for a square
non-singular matrix. The
IsSinular property can be used to check if the factored matrix
is singular before attempting to execute the
Inverse method.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CLU.Solve(Bluebit.MatrixLibrary.CMatrix)">
<summary>Solves a system of linear equations with multiple right hands
using the LU factorization of a general complex
matrix.</summary>
<returns>A
CMatrix
object that contains the solution of the system of linear
equations.</returns>
<remarks> The Solve method finds the solution to
the system of linear equations
AΓÇóX = B
where:
A denotes the complex square matrix
that has been previously factored (represented now by its
LU factorization).
B denotes the matrix whose columns
contain the right hand terms.
X denotes the solution matrix that
is to be computed.
The system can be solved with multiple right-hand
sides stored in the columns of the matrix
B.
</remarks>
<param name="rightHands">A
CMatrix
object containing the right-hand sides for the system of linear
equations.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CLU.Cols">
<summary>Gets the number of columns of the matrix that is represented
by the factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CLU.IsSingular">
<summary>Gets a Boolean value indicating whether the
LU factorization represents a singular
matrix.</summary>
<remarks>Use IsSingular property to check for matrix
singularity, just before attempting to use the
Inverse or
Solve methods.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CLU.L">
<summary>Gets the L factor, the lower triangular part
of the LU factorization.</summary>
<remarks> The LU factorization of a general
m by n matrix is formed as A
= PΓÇóLΓÇóU
where P is a permutation matrix,
L is lower triangular with unit diagonal
elements (lower trapezoidal if m>n) and
U is upper triangular (upper trapezoidal if
m<n).</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CLU.P">
<summary>Gets the P factor, the permutation matrix of
the LU factorization.</summary>
<remarks>The LU factorization of a general m
by n matrix is formed as A =
PΓÇóLΓÇóU where
P is a permutation matrix, L is
lower triangular with unit diagonal elements (lower trapezoidal if
m>n) and U is upper triangular (upper
trapezoidal if m<n).</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CLU.Rows">
<summary>Gets the number of rows of the matrix that is represented by
the factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CLU.U">
<summary>Gets the U factor, the upper triangular part
of the LU factorization.</summary>
<remarks>The LU factorization of a general m
by n matrix is formed as A =
PΓÇóLΓÇóU where
P is a permutation matrix, L is
lower triangular with unit diagonal elements (lower trapezoidal if
m>n) and U is upper triangular (upper
trapezoidal if m<n).</remarks>
</member>
<member name="T:Bluebit.MatrixLibrary.CMatrix">
<summary>Represents a matrix having
complex
floating point numbers as elements.</summary>
<remarks> CMatrix class is used as to represent a
general complex matrix. Its methods can be used to perform
matrix operations and data manipulation.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor">
<summary>Initializes a new instance of the
CMatrix
class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor">
<summary>Initializes a new instance of the
CMatrix
class creating a 3x3 complex matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor(Bluebit.MatrixLibrary.CMatrix)">
<summary>Initializes a new instance of the
CMatrix
class copying the content of an existing matrix.</summary>
<remarks>This is the copy constructor of the
CMatrix
class.</remarks>
<param name="matrix">The
CMatrix
object whose elements will by copied into the newly created
matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor(Bluebit.MatrixLibrary.Complex,System.Int32,System.Int32)">
<summary>Initializes a new instance of the
CMatrix
class using the content of a two-dimensional array, specifying the
size of the created matrix.</summary>
<remarks>If array is bigger than the specified matrix, the
extra values are ignored; if it is smaller the rest of the matrix
elements are filled with zero values.</remarks>
<param name="rows">The number of rows of the new
CMatrix
object.</param>
<param name="cols">The number of columns of the new
CMatrix
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor(Bluebit.MatrixLibrary.Complex[])">
<summary>Initializes a new instance of the
CMatrix
class using the content of a two-dimensional array.</summary>
<param name="array">The array of
complex
structures whose content will be used to initialize the elements of
the newly created
CMatrix
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor(Bluebit.MatrixLibrary.Complex[],System.Int32,System.Int32)">
<summary>Initializes a new instance of the
CMatrix
class using the content of a two-dimensional array</summary>
<param name="array">The array of
complex
structures whose content will be used to initialize the elements of
the newly created CMatrix object.</param>
<param name="rows">The number of rows of the new
CMatrix
object.</param>
<param name="cols">The number of columns of the new
CMatrix
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor(Bluebit.MatrixLibrary.Complex[],System.Int32,System.Int32)">
<summary>Initializes a new instance of the
CMatrix
class using the content of a one-dimensional array.</summary>
<param name="array">The array of
complex
structures whose content will be used to initialize the elements of
the newly created
CMatrix
object.</param>
<param name="rows">The number of rows of the new
CMatrix
object.</param>
<param name="cols">The number of columns of the new
CMatrix
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor(Bluebit.MatrixLibrary.Complex[],System.Int32,System.Int32,Bluebit.MatrixLibrary.StorageOrder)">
<summary>Initializes a new instance of the
CMatrix
class using the content of a one-dimensional array, specifying the
size of the created matrix, and the storage order.</summary>
<remarks>If order is set to ColumnMajor then the
array elements will be used to fill the newly created matrix column
by column; if set to RowMajor, row by row.</remarks>
<param name="array">The array of
complex
structures whose content will be used to initialize the elements of
the newly created
CMatrix
object.</param>
<param name="rows">The number of rows of the new
CMatrix
object.</param>
<param name="cols">The number of columns of the new
CMatrix
object.</param>
<param name="order">A
SortOrder enumeration specifying the order in which the array
values will be used to initialize the matrix elements</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor(System.Int32,System.Int32)">
<summary>Initializes a new instance of the
CMatrix
class specifying the number of rows and columns of the newly
created matrix.</summary>
<param name="rows">The number of rows of the new
CMatrix
object.</param>
<param name="cols">The number of columns of the new
CMatrix
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor(System.Int32,System.Int32,Bluebit.MatrixLibrary.Complex)">
<summary>Initializes a new instance of the
CMatrix
class specifying the number of rows and columns of the newly
created matrix, initializing its diagonal elements to the specified
complex value.</summary>
<param name="rows">The number of rows of the new
CMatrix
object.</param>
<param name="cols">The number of columns of the new
CMatrix
object.</param>
<param name="diagonal">The
complex
value that will be used to initialize the diagonal elements of the
matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Initializes a new instance of the
CMatrix
class and initializes the real and imaginary parts of its complex
elements using the values from two
Matrix
objects .</summary>
<param name="real">The
Matrix
object whose values will initialize the real part of the
CMatrix
object's complex elements.</param>
<param name="imaginary">The
Matrix
object whose values will initialize the imaginary part of the
CMatrix
object's complex elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix._ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary> Initializes a new instance of the
CMatrix class and uses the specified</summary>
<remarks>This constructor implements the</remarks>
<param name="info"/>
<param name="context">An instance of the</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Add(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Adds two matrices.</summary>
<returns>A
CMatrix
object that represents the result of the addition.</returns>
<remarks>The Add method is an alias for the
Addition operator.</remarks>
<param name="matrix1">A
CMatrix
instance on the left side of the addition operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Adjoint">
<summary>Returns the conjugate transpose (adjoint) of the
matrix.</summary>
<returns>A
CMatrix
instance that represents the conjugate transpose of the current
matrix.</returns>
<remarks>Using Adjoint method is equivalent to
sequentially using
Conjugate and
Transpose methods.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ApplyFunction">
<summary>Returns a new
CMatrix
object, whose elements are the result of applying the specified
complex
function to the elements of this matrix.</summary>
<returns>A new
CMatrix
object, whose elements are the result of applying the specified
complex
function to the elements of this matrix.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ApplyFunction(Bluebit.MatrixLibrary.ComplexFunction1Cmp)">
<summary>Returns a new
CMatrix
object, whose elements are the result of applying the specified
complex
function to the elements of this matrix.</summary>
<remarks> The elements of this matrix are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
CMatrix object.</remarks>
<returns>A new
CMatrix
object with the same size as this matrix, whose elements are the
results of applying the specified function to the elements
of this matrix.</returns>
<param name="function">A delegate to a function that takes one
complex
parameter and returns a
complex.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ApplyFunction(Bluebit.MatrixLibrary.ComplexFunction1Cmp1Int,System.Int32)">
<summary>Returns a new
CMatrix
object, whose elements are the result of applying the specified
complex
function to the elements of this matrix.</summary>
<remarks> The elements of this matrix are passed one by one as the
first parameter to the function that is represented by the
delegate; the value is passed to the second parameter.
The returned values from this function are used to initialize
the elements of the newly created
CMatrix object.</remarks>
<returns>A new
CMatrix
object with the same size as this matrix, whose elements are the
results of applying the specified function to the elements
of this matrix.</returns>
<param name="function">A delegate to a function that takes as its first parameter a
complex,
as a second parameter an
integer and returns a
complex.</param>
<param name="value">The
integer value that will be passed to the second parameter of
the function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ApplyFunction(Bluebit.MatrixLibrary.ComplexFunction1Cmp2Int)">
<summary>Returns a new
CMatrix
object, whose elements are the result of applying the specified
complex
function to the elements of this matrix.</summary>
<returns>A new
CMatrix
object with the same size as this matrix, whose elements are the
results of applying the specified function to the elements
of this matrix.</returns>
<remarks> The elements of this matrix are passed one by one as the
first parameter to the function that is represented by the
delegate.
The row and column
number of each element are passed to the second and third
parameter of the function respectively.
The returned values from this function are used to
initialize the elements of the newly created
CMatrix object.</remarks>
<param name="function">A delegate to a function that takes as first parameter a
complex,
as a second and third parameter an
integer and returns a
complex.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ApplyFunction(Bluebit.MatrixLibrary.ComplexFunction2Cmp,Bluebit.MatrixLibrary.Complex)">
<summary>Returns a new
CMatrix
object, whose elements are the result of applying the specified
complex
function to the elements of this matrix.</summary>
<returns>A new
CMatrix
object with the same size as this matrix, whose elements are the
results of applying the specified function to the elements
of this matrix.</returns>
<remarks> The elements of this matrix are passed one by one as the
first parameter to the function that is represented by the
delegate; the value2 is passed to the second
parameter. The returned values from this function are used to
initialize the elements of the newly created
CMatrix object.</remarks>
<param name="function">A delegate to a function that takes as its first parameter a
complex,
as a second parameter an
integer and returns a
complex.</param>
<param name="value2">The
complex
value that will be passed to the second parameter of the function
represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ApplyFunction(Bluebit.MatrixLibrary.ComplexFunction2Cmp2Int,Bluebit.MatrixLibrary.Complex)">
<summary>Returns a new
CMatrix
object, whose elements are the result of applying the specified
complex
function to the elements of this matrix.</summary>
<returns>A new
CMatrix
object with the same size as this matrix, whose elements are the
results of applying the specified function to the elements
of this matrix.</returns>
<remarks> The elements of this matrix are passed one by one as the
first parameter to the function that is represented by the
delegate; the value2 is passed to the second
parameter.
The row and column
number of each element are passed to the third and fourth
parameter of the function respectively.
The returned values from this function are used to
initialize the elements of the newly created
CMatrix object.
</remarks>
<param name="function">A delegate to a function that takes as its first and second
parameter a
complex,
as its third and fourth parameter an
integer and returns a
complex.</param>
<param name="value2">The
complex
value that will be passed to the second parameter of the function
represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Clear">
<summary>Sets the value of all the
CMatrix
elements to zero.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Clone">
<summary>Creates a duplicate of this
CMatrix
object.</summary>
<returns>A new
CMatrix
object that contains the same data as this.</returns>
<remarks>A deep copy is created. Each
CMatrix
object references different data.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ColsDotProduct(System.Int32,System.Int32)">
<summary>Returns the dot product between two columns of the
CMatrix
object.</summary>
<returns>A
Complex
that equals to the dot product between two columns of the
matrix.</returns>
<remarks>If the same value is used for the col1,
col2 parameters then the value returned is the sum of
squares of the specified column's elements.</remarks>
<param name="col1">An
integer specifying the first column.</param>
<param name="col2">An
integer specifying the first column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ColSum(System.Int32)">
<summary>Returns the sum of the elements of the specified
column.</summary>
<returns>A
Complex
equal to the sum of the specified column.</returns>
<param name="colIndex">An
integer specifying the column to be summed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ColVector(System.Int32)">
<summary>Returns a new
CVector
object using the specified matrix column.</summary>
<returns>A new
CVector
object containing the elements of the specified column.</returns>
<remarks>A deep copy of the data is created. The
CVector
object references its own data.</remarks>
<param name="col">An
integer specifying the column to return as a
CVector
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Conjugate">
<summary>Returns the conjugate of the current matrix.</summary>
<returns>A
CMatrix
object that represents the conjugate of the current matrix.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Determinant">
<summary>Returns the value of the computed matrix determinant.</summary>
<returns>A
Complex
value that equals to the matrix determinant.</returns>
<remarks>Determinant can be calculated only for a square
matrix.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Diagonal">
<summary>Returns a
CVector
object containing the main diagonal of the current matrix.</summary>
<returns>A
CVector
object containing the elements of the main diagonal.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Divide">
<summary>Performs matrix right division.Performs matrix
division.</summary>
<returns>A
CMatrix
object that represents the result of the matrix right
division.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Divide(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Performs matrix right division</summary>
<remarks> The Divide method is an alias for the
Division operator.
X = B / A then X is the
solution of the equation XΓÇóA =
B.</remarks>
<returns>A
CMatrix
object that represents the result of the matrix division.</returns>
<param name="matrix1">A
CMatrix
instance on the left side of the division operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Divide(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.Complex)">
<summary>Performs matrix-scalar division.</summary>
<returns>A
CMatrix
object that represents the result of the matrix-scalar
division.</returns>
<param name="matrix">A
CMatrix
instance on the left side of the division operator.</param>
<param name="scalar">A
Complex
on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Divide(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CMatrix)">
<summary>Performs scalar-matrix division.</summary>
<returns>A
CMatrix
object that represents the result of the scalar-matrix
division.</returns>
<param name="scalar">A
Complex
on the left side of the division operator.</param>
<param name="matrix">A
CMatrix
instance on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Equals(System.Object)">
<summary>Returns a value indicating whether this
CMatrix
object is equal to another matrix.</summary>
<returns>true if obj is an instance of the
CMatrix
class and represents a matrix that has the same size as this
instance and also all the elements of obj are equal to the
elements of this instance; false otherwise.</returns>
<remarks> The elements of this matrix and obj are compared with the
== operator end they must be exactly equal in order for this
method to return true.
If you need to test if elements of two matrices are equal
within a specified tolerance use the
IsEqual method.</remarks>
<param name="obj">An object to compare with this instance of the
CMatrix
class.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.FillRandom">
<summary>Fills
CMatrix
object with random values.</summary>
<remarks>Use FillRandom method in order to quickly
fill matrix with random values, while coding, testing and debugging
your application.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.FillRandom">
<summary>Fills
CMatrix
object with random values ranging from 0 to 10, rounded to zero
decimal places.</summary>
<remarks>Use FillRandom method in order to quickly
fill the matrix with random values, while coding, testing and
debugging your application.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.FillRandom(System.Double,System.Double)">
<summary>Fills
CMatrix
object with random values ranging from lower to upper bound,
rounded to 0 decimal places.</summary>
<remarks>Use FillRandom method in order to quickly
fill the matrix with random values, while coding, testing and
debugging your application.</remarks>
<param name="lowerBound">A
double specifying the lower limit of the random values that
will be used.</param>
<param name="upperBound">A
double specifying the upper limit of the random values that
will be used.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.FillRandom(System.Double,System.Double,System.Int32)">
<summary>Fills
CMatrix
object with random values ranging from lower bound to upper bound,
rounded to the specified number of decimal places.</summary>
<remarks>Use FillRandom method in order to quickly
fill the matrix with random values, while coding, testing and
debugging your application.</remarks>
<param name="lowerBound">A
double specifying the lower limit of the random values that
will be used.</param>
<param name="upperBound">A
double specifying the upper limit of the random values that
will be used.</param>
<param name="decimals">An
integer specifying the number of decimal places to which random
values will be rounded to.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.GetHashCode">
<summary>Returns the hash code of the current
ShortParentItemName.</summary>
<returns>A 32-bit signed integer that represents the hash
code.</returns>
<remarks>This method overrides Object.GetHashcode and
generates the same hash code for two objects that are equal
according to the Equals method.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>Implements the
ISerializable interface and returns the data needed to
serialize the
CMatrix
class.</summary>
<remarks>This method implements the ISerializable
interface.</remarks>
<param name="info">A
SerializationInfo object.</param>
<param name="context">A
StreamingContext structure.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.HasINFs">
<summary>Returns a value indicating whether the current matrix
contains any elements that evaluate to negative or
positive infinity.</summary>
<returns>true if any of the matrix elements evaluates
to negative or positive infinity;
otherwise false.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.HasNaNs">
<summary>Returns a value indicating whether the current matrix
contains any elements that evaluate to NaN
values.</summary>
<returns>true if any of the matrix elements evaluates
to a NaN value; otherwise
false.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Imag">
<summary>Returns a
Matrix
object containing the imaginary parts of the
CMatrix
elements.</summary>
<returns>A
Matrix
object that contains just the imaginary parts of the
CMatrix
object's elements.</returns>
<remarks>Use this method together with the
Real method in order to split a complex matrix to its real and
imaginary parts.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Inverse">
<summary>Computes the inverse of the complex matrix and returns a
reference to it.</summary>
<returns>A
CMatrix
object representing the inverse of the current matrix.</returns>
<remarks> Use Inverse method with error handling
to trap errors arising from the matrix being a singular
matrix.
An alternative method for computing the matrix inverse is
to use the
CLU
object. The
CLU
object can then be reused for further computations as solving
systems of linear equations.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.IsEqual">
<summary>Returns a value indicating whether this
CMatrix
is equal to another matrix within a tolerance.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.IsEqual(Bluebit.MatrixLibrary.CMatrix)">
<summary>Returns a value indicating whether this
CMatrix
is equal to another matrix within a default tolerance.</summary>
<returns>true if matrix has the same size as
this instance and its elements are equal with the elements of this
instance within the default tolerance; otherwise
false.</returns>
<remarks>The default tolerance equals to the maximum absolute value of
matrix elements, multiplied by the double epsilon value
(2.2204460492503131e-016).</remarks>
<param name="matrix">A
CMatrix
whose elements to compare with the elements of this
CMatrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.IsEqual(Bluebit.MatrixLibrary.CMatrix,System.Double)">
<summary>Returns a value indicating whether this
CMatrix
is equal to another matrix within the specified tolerance.</summary>
<returns>true if matrix has the same size as
this instance and its elements are equal with the elements of this
instance within the specified tolerance; otherwise
false.</returns>
<param name="matrix">A
CMatrix
whose elements to compare with the elements of this
CMatrix.</param>
<param name="tolerance">Specifies the tolerance.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.IsFinite">
<summary>Returns a value indicating whether the current matrix
contains any elements that evaluate either to NaN
value or to a negative or
positive infinity.</summary>
<returns>true if all elements of the current matrix
have a value other NaN, negative
infinity, positive
infinity; otherwise false.</returns>
<remarks> Most of the internal routines expect that input matrices
or vectors do not contain any negative infinity, positive
infinity, or NaN values in order to perform
flawlessly.
If you suspect that the current matrix or vector may
contain any NaN or infinity
values, use IsFinite method before any further
processing.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.IsHermitian">
<summary>Returns a value indicating whether this matrix is
Hermitian.</summary>
<returns>true if matrix is found to be Hermitian;
false otherwise.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.IsHermitian">
<summary>Returns a value indicating whether this matrix is
Hermitian.</summary>
<returns>true if matrix is found to be Hermitian;
false otherwise.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.IsHermitian(System.Double)">
<summary>Returns a value indicating whether this matrix is
Hermitian.</summary>
<returns>true if matrix is found to be Hermitian;
false otherwise.</returns>
<param name="tolerance">To tolerance to be used when comparing matrix
elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.IsSymmetric">
<summary>Returns a value indicating whether this matrix is
symmetric.</summary>
<returns>true if matrix is found to be a symmetric
matrix; false otherwise.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.IsSymmetric">
<summary>Returns a value indicating whether this matrix is
symmetric.</summary>
<returns>true if matrix is found to be a symmetric
matrix; false otherwise.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.IsSymmetric(System.Double)">
<summary>Returns a value indicating whether this matrix is
symmetric.</summary>
<returns>true if matrix is found to be a symmetric
matrix; false otherwise.</returns>
<param name="tolerance">To tolerance to be used when comparing matrix
elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.LDivide(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Performs matrix left division.</summary>
<returns>A
CMatrix
object that represents the result of the matrix left
division.</returns>
<remarks>Matrix.LDivide(matrix1, matrix2) is
equivalent to matrix1.Solve(matrix2)</remarks>
<param name="matrix1">A
CMatrix
instance on the left side of division operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Multiply">
<summary>Multiplies matrices.Multiplies two complex matrices.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Multiply(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Multiplies two complex matrices.</summary>
<returns>A
CMatrix
object that represents the result of the matrix
multiplication.</returns>
<remarks>The inner dimensions of the matrices being multiplied must
agree; matrix1 must have as many columns as
matrix2 has rows.</remarks>
<param name="matrix1">A
CMatrix
instance on the left side of the multiplication operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Multiply(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.Complex)">
<summary>Returns the product of a scalar and a complex matrix.</summary>
<returns>A
CMatrix
object that represents the matrix - scalar
product.</returns>
<param name="matrix">A
CMatrix
object that represents the matrix to be multiplied.</param>
<param name="scalar">A
Complex
structure that represents the scalar..</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Multiply(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CVector)">
<summary>Multiplies a matrix with a complex vector.</summary>
<returns>A
CMatrix
that represents the result of the matrix-vector
multiplication.</returns>
<remarks>The vector parameter is taken as a column
vector.</remarks>
<param name="matrix">A
CMatrix
object that represents the matrix to be multiplied.</param>
<param name="vector">A
CVector
object that represents the vector to multiply with.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Multiply(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Multiplies a complex matrix by a real matrix.</summary>
<returns>A
CMatrix
object that represents the result of the matrix
multiplication.</returns>
<remarks>The inner dimensions of the matrices being multiplied must
agree; matrix1 must have as many columns as
matrix2 has rows.</remarks>
<param name="matrix1">A
CMatrix
instance on the left side of the multiplication operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Multiply(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CMatrix)">
<summary>Computes a scalar-matrix-matrix product and adds the result
to a scalar-matrix product.</summary>
<remarks> The operation performed by this method is defined
as:
D = alphaΓÇóAΓÇóB + betaΓÇóC</remarks>
<param name="alpha">A
Complex
representing the scalar value of the scalar-matrix-matrix
product.</param>
<param name="A">A
CMatrix
object representing the first matrix of the complex-matrix-matrix
product.</param>
<param name="B">A
CMatrix
object representing the second matrix of the complex-matrix-matrix
product.</param>
<param name="beta">A
Complex
representing the scalar value of the scalar-matrix product.</param>
<param name="C">A
CMatrix
object representing the matrix of the complex-matrix
product.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Negate(Bluebit.MatrixLibrary.CMatrix)">
<summary>Returns the negation of the matrix.</summary>
<returns>A
CMatrix
object that represents the negate of the matrix.</returns>
<remarks>This method is an alias for the
unary negation operator.</remarks>
<param name="matrix">The matrix to negate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Norm(Bluebit.MatrixLibrary.NormType)">
<summary>Returns the matrix norm.</summary>
<returns>A
Complex
value representing the specified norm.</returns>
<remarks> The following table lists all possible values for the
type parameter and the types of norm that can be
calculated.
Member
Description
FrobeniusNorm
Frobenius norm of the matrix or vector
(square root of sum of squares).
InfinityNorm
Infinity norm of the matrix (maximum
row sum).
OneNorm
1-norm of the matrix (maximum column
sum).
MaxAbsValue
The element of largest absolute value
of the matrix.
</remarks>
<param name="type"> A
NormType enumeration value that specifies the type of norm
to be returned.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.NormalizeCols(Bluebit.MatrixLibrary.NormalizeMode)">
<summary> Normalizes the columns of the current matrix according to
the specified mode.</summary>
<remarks> The following table lists the values of
NormalizeMode enumeration and their effect on column
normalization.
Member
Description
MaximumOne
Normalizes columns or rows so that
their biggest element is 1.
UnitLength
Normalizes columns or rows so that
they become unit length vectors (their sum of
squares is 1).
ZScores
Normalizes columns or rows to zscores
(values having zero mean and unit standard
deviation).
</remarks>
<param name="mode">A
NormalizeMode enumeration value indicating how the matrix
columns will be normalized.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.NormalizeRows(Bluebit.MatrixLibrary.NormalizeMode)">
<summary> Normalizes the rows of the current matrix according to
the specified mode.</summary>
<remarks> The following table lists the values of
NormalizeMode enumeration and their effect on row
normalization.
Member
Description
MaximumOne
Normalizes columns or rows so that
their biggest element is 1.
UnitLength
Normalizes columns or rows so that
they become unit length vectors (their sum of
squares is 1).
ZScores
Normalizes columns or rows to zscores
(values having zero mean and unit standard
deviation).
</remarks>
<param name="mode">A
NormalizeMode enumeration value indicating how the matrix rows
will be normalized.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Addition(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Adds two matrices.</summary>
<returns>A
CMatrix
object that represents the result of the addition.</returns>
<remarks>The
Add method performs the same function as the addition operator
and can be used in languages that do not support overloaded
operators as Visual Basic.</remarks>
<param name="matrix1">A
CMatrix
instance on the left side of the addition operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Division">
<summary>Performs matrix right division.Performs matrix
division.</summary>
<returns>A
CMatrix
object that represents the result of the matrix right
division.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Division(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Performs matrix right division</summary>
<remarks> X = B / A then X is the
solution of the equation XΓÇóA =
B.</remarks>
<returns>A
CMatrix
object that represents the result of the matrix division.</returns>
<param name="matrix1">A
CMatrix
instance on the left side of the division operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Division(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.Complex)">
<summary>Performs matrix-scalar division.</summary>
<returns>A
CMatrix
object that represents the result of the matrix-scalar
division.</returns>
<param name="matrix">A
CMatrix
instance on the left side of the division operator.</param>
<param name="scalar">A
Complex
on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Division(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CMatrix)">
<summary>Performs scalar-matrix division.</summary>
<returns>A
CMatrix
object that represents the result of the scalar-matrix
division.</returns>
<param name="scalar">A
Complex
on the left side of the division operator.</param>
<param name="matrix">A
CMatrix
instance on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Equality(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Tests whether two
CMatrix
objects represent equal matrices.</summary>
<returns>true if matrices are equal; otherwise
false.</returns>
<remarks> The equality operator returns false if
matrices are not of the same size.
The elements of the compared matrices must be exactly
equal in order to the equality operator return
true. If you need to test if elements of two
matrices are equal within a specified tolerance use the
IsEqual method.</remarks>
<param name="matrix1">A
CMatrix
instance on the left side of the equality operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of the equality operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Implicit">
<summary>Defines conversions between
CMatrix
objects and arrays of
complex
structures.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Implicit(Bluebit.MatrixLibrary.CMatrix)">
<summary>Converts a
CMatrix
to a two-dimensional array of type
complex.</summary>
<remarks>
ToArray method can be used in languages that do not support
operator overloading like Visual Basic.</remarks>
<returns>A two-dimensional array of type
complex
containing the same values as the
CMatrix
object.</returns>
<param name="matrix">The
CMatrix
object to convert.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Implicit(Bluebit.MatrixLibrary.Complex[])">
<summary>Converts a two-dimensional array of type
complex
to a
CMatrix
object.</summary>
<returns>A
CMatrix
object containing the same values as the array.</returns>
<param name="array">The two-dimensional array of type
complex
to convert.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Inequality(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Tests whether two
CMatrix
objects represent non equal matrices.</summary>
<returns>true if matrices are not equal; otherwise
false.</returns>
<param name="matrix1">A
CMatrix
instance on the left side of the equality operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of the equality operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Multiply">
<summary>Multiplies matrices.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Multiply(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Multiplies two matrices.</summary>
<returns>A
CMatrix
object that represents the product.</returns>
<remarks> The inner dimensions of the matrices being multiplied
must agree. That is, the number of columns in the first matrix
must be equal to the number of rows in the second
matrix.
Matrix multiplication is not commutative,
A" B is not the same as
B" A.</remarks>
<param name="matrix1">A
CMatrix
instance on the left side of the multiplication operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Multiply(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.Complex)">
<summary>Multiplies a matrix by a scalar.</summary>
<returns>A
CMatrix
object that represents the product.</returns>
<remarks>The matrix-scalar multiplication is a commutative
operation.</remarks>
<param name="matrix">A
CMatrix
instance on the left side of the multiplication operator.</param>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Multiply(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CVector)">
<summary>Multiplies a matrix by a vector.</summary>
<returns>A
CMatrix
object that represents the product.</returns>
<remarks> The
CVector is considered to be a column vector; a one-column
matrix.
The vector size must be equal to the number of columns of
the matrix.</remarks>
<param name="matrix">A
CMatrix
instance on the left side of the multiplication operator.</param>
<param name="vector">A
CVector
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Multiply(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Multiplies two matrices.</summary>
<returns>A
CMatrix
object that represents the result of the matrix
multiplication.</returns>
<remarks>The inner dimensions of the matrices being multiplied must
agree; matrix1 must have as many columns as
matrix2 has rows.</remarks>
<param name="matrix1">A
CMatrix
instance on the left side of the multiplication operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Multiply(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CMatrix)">
<summary>Multiplies a scalar by a matrix.</summary>
<returns>A
CMatrix
object that represents the product.</returns>
<remarks>The matrix-scalar multiplication is a commutative
operation.</remarks>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
on the left side of the multiplication operator.</param>
<param name="matrix">A
CMatrix
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_Subtraction(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Subtracts two matrices.</summary>
<returns>A
CMatrix
object that represents the result of the subtraction.</returns>
<remarks>The
Subtract method performs the same function as the addition
operator and can be used in languages that do not support
overloaded operators as Visual Basic.</remarks>
<param name="matrix1">A
CMatrix
instance on the left side of the addition operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_UnaryNegation(Bluebit.MatrixLibrary.CMatrix)">
<summary>Negates the matrix.</summary>
<returns>A
CMatrix
object representing the negation of the matrix.</returns>
<remarks>The
Negate method performs the same function as the unary negation
operator and can be used in languages that do not support
overloaded operators as Visual Basic.</remarks>
<param name="matrix">A
CMatrix
object representing the matrix to negate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.op_UnaryPlus(Bluebit.MatrixLibrary.CMatrix)">
<summary>Returns the same matrix.</summary>
<returns>The same instance of the
CMatrix
object .</returns>
<param name="matrix">A
CMatrix
instance on the right side of the unary plus operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Plus(Bluebit.MatrixLibrary.CMatrix)">
<summary>Adds a matrix with the current matrix.</summary>
<returns>A
CMatrix
object that represents the result of adding matrix with
current matrix.</returns>
<param name="matrix">A
CMatrix
object that represents the matrix to add with current
matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.PseudoInverse">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix.</summary>
<returns>A
CMatrix
object representing the Moore-Penrose inverse (pseudoinverse) of
this matrix.</returns>
<remarks> If A+ is the Moore-Penrose
inverse (pseudoinverse) of matrix A then it
satisfies the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ =A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=A+ΓÇóA
</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.PseudoInverse">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix.</summary>
<returns>A
CMatrix
object representing the Moore-Penrose inverse (pseudoinverse) of
this matrix.</returns>
<remarks>
If A+ is the Moore-Penrose
inverse (pseudoinverse) of matrix A then
it satisfies the following four conditions:
AΓÇóA+ΓÇó
A = A
A+ΓÇóAΓÇó
A+ =
A+
(AΓÇóA+)
T =
AΓÇóA+
(A+ΓÇóA)
T =
A+ΓÇóA
</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.PseudoInverse(System.Double)">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix.</summary>
<remarks> Singular value decomposition is used for the calculation
of the pseudoinverse. Roundoff errors can lead to a singular
value not being exactly zero even if it should be.
tolerance parameter places a threshold when comparing
singular values with zero and improves the numerical stability
of the method with singular or near-singular matrices.
If A+ is the Moore-Penrose
inverse (pseudoinverse) of matrix A then it
satisfies the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ =A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=A+ΓÇóA
</remarks>
<returns>A
CMatrix
object representing the Moore-Penrose inverse (pseudoinverse) of
this matrix.</returns>
<param name="tolerance">A
double specifying the value under which the singular values of
the matrix are considered to be zero.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Rank">
<summary>Returns the matrix rank.</summary>
<remarks>The matrix rank is defined as the number of its nonzero
singular values.</remarks>
<returns>An
integer value representing the matrix rank.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Real">
<summary>Returns a
Matrix
object containing the real parts of the
CMatrix
elements.</summary>
<returns>A
Matrix
object that contains just the real parts of the
CMatrix
object's elements.</returns>
<remarks>Use this method together with the
Imag method in order to split a complex matrix to its real and
imaginary parts.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ReorderCols(System.Int32[])">
<summary>Reorders matrix columns according to the specified
order.</summary>
<remarks> pivots[i] = k denotes that column
i should be moved to position k.</remarks>
<param name="pivots">An array of
integers containing the column dispositions.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ReorderRows(System.Int32[])">
<summary>Reorders matrix rows according to the specified order.</summary>
<remarks> pivots[i] = k denotes that row
i should be moved to position k.</remarks>
<param name="pivots">An array of
integers containing the row dispositions.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Resize(System.Int32,System.Int32)">
<summary>Resizes matrix preserving its content.</summary>
<remarks>If new dimensions are smaller the matrix is truncated; if
bigger then zeros are added.</remarks>
<param name="rows">An
integer specifying the new number of rows.</param>
<param name="cols">An
integer specifying the new number of columns.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.RowsDotProduct(System.Int32,System.Int32)">
<summary>Returns the dot product between two rows of the
CMatrix
object.</summary>
<returns>A
Complex
that equals to the dot product between two rows of the
matrix.</returns>
<remarks>If the same value is used for the row1,
row2 parameters then the value returned is the sum of
squares of the specified rows's elements.</remarks>
<param name="row1">An
integer specifying the first row.</param>
<param name="row2">An
integer specifying the second row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.RowSum(System.Int32)">
<summary>Returns the sum of the elements of the specified row.</summary>
<returns>A
Complex
equal to the sum of the specified row.</returns>
<param name="rowIndex">An
integer specifying the row to be summed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.RowVector(System.Int32)">
<summary>Returns a new
CVector
object using the specified matrix row.</summary>
<returns>A new
CVector
object containing the elements of the specified row.</returns>
<remarks>A deep copy of the data is created. The
CVector
object references its own data.</remarks>
<param name="row">Specifies the row to return as a
CVector
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SetColumn">
<summary>Sets the elements of a matrix column to specified
value(s).</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SetColumn(System.Int32,Bluebit.MatrixLibrary.Complex)">
<summary>Sets all elements of a matrix column to the specified
value.</summary>
<param name="col">An
integer specifying the column.</param>
<param name="value">A
Complex
that will be used to set all elements of the specified
column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SetColumn(System.Int32,Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Sets all elements of a matrix column to incremental
values.</summary>
<param name="col">An
integer specifying the column.</param>
<param name="start">A
Complex
specifying a value for the first element of the column.</param>
<param name="step">A
Complex
to be added to each successive element of the column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SetColumn(System.Int32,Bluebit.MatrixLibrary.Complex[])">
<summary>Sets all elements of a matrix column using the content on an
array.</summary>
<param name="col">An
integer specifying the column.</param>
<param name="values">An array of
Complex
structures whose content will be used to set the elements of the
specified column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SetColumn(System.Int32,Bluebit.MatrixLibrary.CVector)">
<summary>Sets all elements of a matrix column using the contents on a
vector.</summary>
<param name="col">An
integer specifying the column.</param>
<param name="vector">A
CVector
whose content will be used to set the elements of the specified
column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SetRow">
<summary>Sets the elements of a matrix row to specified
value(s).</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SetRow(System.Int32,Bluebit.MatrixLibrary.Complex)">
<summary>Sets all elements of a matrix row to the specified
value.</summary>
<param name="row">An
integer specifying the row.</param>
<param name="value">A
Complex
that will be used to set all elements of the specified row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SetRow(System.Int32,Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>Sets all elements of a matrix row to incremental
values.</summary>
<param name="row">An
integer specifying the row.</param>
<param name="start">A
Complex
specifying a value for the first element of the row.</param>
<param name="step">A
Complex
to be added to each successive element of the row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SetRow(System.Int32,Bluebit.MatrixLibrary.Complex[])">
<summary>Sets all elements of a matrix row using the content on an
array.</summary>
<param name="row">An
integer specifying the row.</param>
<param name="values">An array of
Complex
structures whose content will be used to set the elements of the
specified row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SetRow(System.Int32,Bluebit.MatrixLibrary.CVector)">
<summary>Sets all elements of a matrix row using the contents on a
vector.</summary>
<param name="row">An
integer specifying the row.</param>
<param name="vector">A
CVector
whose content will be used to set the elements of the specified
row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Solve(Bluebit.MatrixLibrary.CMatrix)">
<summary>Solves a system of linear equations.</summary>
<returns>A
CMatrix
object that contains the solution of the system of linear
equations.</returns>
<remarks> The Solve method finds the solution to
the system of linear equations
AΓÇóX = B
where:
A denotes the current matrix.
B denotes the matrix whose columns contain the
right hand terms (rightHands parameter).
X denotes the solution matrix that is to be
computed and will be returned by the method.
The system can be solved with multiple right-hand sides
stored in the columns of the matrix B.
rightHands matrix must have the same number of
rows as current matrix.
If current matrix is a
mxn matrix
then the following operations are used:
If
m=n
then LU factorization is used to solve the
system. If matrix is found to be singular then
LQ factorization is used to solve it as an
underdetermined system.
If
m<n
then LQ factorization is used to compute
the minimum norm solution for the underdetermined
system.
If
m>n
then QR factorization is used to compute a
least squares solution for the overdetermined
system.
</remarks>
<param name="rightHands">A
CMatrix
object containing the right-hand sides for the system of linear
equations.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SubMatrix(System.Int32,System.Int32,System.Int32,System.Int32)">
<summary>Returns a subset of the current matrix.</summary>
<returns>A
CMatrix
instance that contains the subset of current matrix.</returns>
<remarks>If endRow is greater than startRow then the
returned matrix is flipped horizontally. The same way if
endCol is greater than startCol, then it is
flipped vertically.</remarks>
<param name="startRow">An
integer specifying the first row to include.</param>
<param name="endRow">An
integer specifying the last row to include.</param>
<param name="startCol">An
integer specifying the first column to include.</param>
<param name="endCol">An
integer specifying the last column to include.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Subtract(Bluebit.MatrixLibrary.CMatrix,Bluebit.MatrixLibrary.CMatrix)">
<summary>Subtracts a matrix from another matrix.</summary>
<returns>A
CMatrix
object that represents the result of the subtraction.</returns>
<remarks>The Subtract method is an alias for the
subtraction operator.</remarks>
<param name="matrix1">A
CMatrix
instance on the left side of the subtraction operator.</param>
<param name="matrix2">A
CMatrix
instance on the right side of the subtraction operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SwapCols(System.Int32,System.Int32)">
<summary>Swaps two matrix columns.</summary>
<param name="col1">An
integer specifying the first column to swap.</param>
<param name="col2">An
integer specifying the second column to swap.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.SwapRows(System.Int32,System.Int32)">
<summary>Swaps two matrix rows.</summary>
<param name="row1">An
integer specifying the first row to swap.</param>
<param name="row2">An
integer specifying the second row to swap.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Times">
<summary>Multiplies the current matrix and returns the result.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Times(Bluebit.MatrixLibrary.CMatrix)">
<summary> Multiplies the current matrix by another matrix and
returns the result.</summary>
<returns>A
CMatrix
object that represents the result of the multiplication.</returns>
<remarks>The inner dimensions of the matrices being multiplied must
agree; matrix must have as rows as current matrix has
columns.</remarks>
<param name="matrix">A
CMatrix
object by which to multiply the current matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Times(Bluebit.MatrixLibrary.Complex)">
<summary>Multiplies the current matrix by a scalar value and returns
the result.</summary>
<returns>A
CMatrix
object that represents the result of the matrix-scalar
multiplication.</returns>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
by which to multiply the current matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Times(Bluebit.MatrixLibrary.CVector)">
<summary>Multiplies the current matrix by a vector and returns the
result.</summary>
<returns>A
CMatrix
that represents the result of the matrix-vector
multiplication.</returns>
<remarks>The vector parameter is taken as a column
vector.</remarks>
<param name="vector">A
CVector
object that represents the vector to multiply the current matrix
with.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ToArray">
<summary>Converts current matrix to an array.</summary>
<returns>An two-dimensional array of type
complex
containing the elements of the current matrix.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ToString">
<summary>Converts this instance of
CMatrix
to a formatted string using the default values for format string,
separator, left and right borders, and end of line
characters.Converts this instance of
CMatrix
to a formatted string.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<remarks>The "F3" format string is used to format each matrix element.
A space character is used as a separator of matrix elements. The
right and left borders are set to "| " and " |" strings
respectively. The new line character "\n" is added after each
matrix row.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ToString">
<summary>Converts this instance of
CMatrix
to a formatted string using the default values for format string,
separator, left and right borders, and end of line
characters.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<remarks>The "F3" format string is used to format each matrix element.
A space character is used as a separator of matrix elements. The
right and left borders are set to "| " and " |" strings
respectively. The new line character "\n" is added after each
matrix row.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ToString(System.IFormatProvider,System.String)">
<summary>Converts this instance of the ShortParentItemName
object to a formatted string specifying culture-specific format
information and a format string.</summary>
<remarks>A space character is used as a separator of matrix elements.
The left and right borders are set to "| " and " |" strings
respectively. The new line character "\n" is added after each
matrix row.</remarks>
<returns>A formatted
string containing all matrix elements.</returns>
<param name="provider"> An
IFormatProvider that supplies culture-specific formatting
information.</param>
<param name="format">A format
string that will be used to convert all matrix elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ToString(System.IFormatProvider,System.String,System.String,System.String,System.String,System.String)">
<summary>Converts this instance of
CMatrix
to a formatted string specifying culture-specific format
information, a format string, a separator, left and right borders
and end of line characters.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<param name="provider"> An
IFormatProvider that supplies culture-specific formatting
information.</param>
<param name="format">A format
string that will be used to convert all matrix elements.</param>
<param name="separator">A
string that will be used to separate matrix elements.</param>
<param name="leftBorder">A
string that will be added at the beginning of each matrix
row.</param>
<param name="rightBorder">A
string that will be added at the end of each matrix row.</param>
<param name="endMatrix">A
string that will be added at the end of each matrix row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ToString(System.String)">
<summary>Converts this instance of
CMatrix
to a formatted string specifying a format string, and using the the
default values for separator, left and right borders, and end of
line characters.</summary>
<remarks>A space character is used as a separator of matrix elements.
The left and right borders are set to "| " and " |" strings
respectively. The new line character "\n" is added after each
matrix row.</remarks>
<returns>A formatted
string containing all matrix elements.</returns>
<param name="format">A format string that will be used to convert all matrix
elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ToString(System.String,System.String)">
<summary>Converts this instance of
CMatrix
to a formatted string specifying a format string, and a separator
and using the default values for left and right borders and end of
line characters.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<remarks>The left and right borders are set to "| " and " |" strings
respectively. The new line character "\n" is added after each
matrix row.</remarks>
<param name="format">A format string that will be used to convert all matrix
elements.</param>
<param name="separator">A
string that will be used to separate matrix elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.ToString(System.String,System.String,System.String,System.String,System.String)">
<summary>Converts this instance of
CMatrix
to a formatted string specifying a format string, a separator, left
and right borders and end of line characters.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<param name="format">A format string that will be used to convert all matrix
elements.</param>
<param name="separator">A
string that will be used to separate matrix elements.</param>
<param name="leftBorder">A
string that will be added at the beginning of each matrix
row.</param>
<param name="rightBorder">A
string that will be added at the end of each matrix row.</param>
<param name="endMatrix">A
string that will be added at the end of each matrix row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Trace">
<summary>Returns the sum of the elements of the main diagonal.</summary>
<returns>A
Complex
value equal to matrix trace.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CMatrix.Transpose">
<summary>Returns the transpose of the matrix.</summary>
<returns>A
CMatrix
instance that represents the transpose of the current
matrix.</returns>
</member>
<member name="P:Bluebit.MatrixLibrary.CMatrix.Cols">
<summary>Gets or sets the number of columns of the current
matrix.</summary>
<remarks>Setting the Cols property to a new value
causes the
CMatrix
to resize. This has the same effect as calling the
Resize method.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CMatrix.Data">
<summary>This property is used while serializing and deserializing the
CMatrix
object and is not intended to be used directly from your
code.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CMatrix.DataPtr">
<summary>Gets the address of the unmanaged (native) memory block
containing the matrix's elements.</summary>
<remarks>Matrix elements are stored in column major order. For a 3x2
matrix its items will be stored in the following order: [0,0],
[1,0], [2,0], [0,1], [1,1], [2,1] .</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CMatrix.IsSquare">
<summary>Indicates whether this instance represents a square
matrix.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CMatrix.Item(System.Int32,System.Int32)">
<summary>Gets or sets a single matrix element.</summary>
<remarks>This is the default property of the
CMatrix
object when using it in Visual Basic. It is the indexer of the
CMatrix
object when used in C#.</remarks>
<param name="row">An
integer specifying the row of the matrix element to get or to
set.</param>
<param name="col">An
integer specifying the column of the matrix element to get or
to set.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CMatrix.Rows">
<summary>Gets or sets the number of rows of the current matrix.</summary>
<remarks>Setting the Rows property to a new value
causes the
CMatrix
to resize. This has the same effect as calling the
Resize method.</remarks>
</member>
<member name="T:Bluebit.MatrixLibrary.CQR">
<summary>Represents a QR factorization of a general
complex matrix.</summary>
<remarks> The QR factorization of a general m
by n matrix A is formed as
AΓÇóP =
QΓÇóR where P
is a permutation matrix, Q is a
mxn (mxm if
m<n) orthogonal matrix and
R is a nxn (mxn if
m<n) upper triangular (upper trapezoidal
if m<n) matrix.
The
CQR
class can be used for solving least-square problems.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CQR._ctor">
<summary>Initializes a new instance of the
CQR
class computing the QR factorization of a general
complex matrix.</summary>
<remarks>The
CQR
class constructor never fails.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CQR._ctor(Bluebit.MatrixLibrary.CMatrix)">
<summary>Initializes a new instance of the
CQR
class computing the QR factorization of a general
complex matrix using column pivoting.</summary>
<remarks>The
CQR
class constructor never fails.</remarks>
<param name="matrix">A
CMatrix
object containing the matrix to factor.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CQR._ctor(Bluebit.MatrixLibrary.CMatrix,System.Boolean)">
<summary>Initializes a new instance of the
CQR
class computing the QR factorization of a general
complex matrix, specifying whether column pivoting will be
used.</summary>
<remarks>The
CQR
class constructor never fails.</remarks>
<param name="matrix">A
CMatrix
object containing the matrix to factor.</param>
<param name="pivoting">A boolean value specifying whether column pivoting will be
used.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CQR.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CQR.GetPivots">
<summary>Gets an array of integers containing the pivot
indices.</summary>
<remarks> Pivots(i) = k denotes that during factorization column k
has moved to column i.
The array that is returned from the
Pivots property can be used as a parameter in
ReorderCols method in order to reconstruct the original
matrix.
This has the same effect as multiplying by the
P matrix but executes faster.</remarks>
<returns>An array of type
Integer.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CQR.Solve(Bluebit.MatrixLibrary.CMatrix)">
<summary>Solves a set of least-squares problems (with multiple right
hands) using the QR factorization of a general
complex matrix.</summary>
<returns>A
CMatrix
object that contains the solution of the least-squares
problems.</returns>
<remarks> The Solve method finds a least-squares
solution to the system of linear equations
AΓÇóX = B
where:
A denotes the complex matrix that has
been previously factored (represented now by its
QR factorization).
B is the matrix whose columns contain
the right hand terms.
X is the solution matrix that is to be
computed and minimizes ||AΓÇóX
-B||2
The system can be solved with multiple right-hand sides
stored in the columns of the matrix B. The
columns of X are the minimum norm solution
vectors.</remarks>
<param name="rightHands">A
CMatrix
object containing the right-hand sides for the set of least-squares
problems.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CQR.Cols">
<summary>Gets the number of columns of the matrix that is represented
by the factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CQR.P">
<summary>Gets the P factor, the permutation matrix of
the QR factorization.</summary>
<remarks>The QR factorization of a general m
by n matrix A is formed as
AΓÇóP =
QΓÇóR where P is a
permutation matrix, Q is a mxn
(mxm if m<n) orthogonal
matrix and R is a nxn
(mxn if m<n) upper triangular
(upper trapezoidal if m<n) matrix.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CQR.Q">
<summary>Gets the Q factor, the orthogonal part of
the QR factorization.</summary>
<remarks>The QR factorization of a general m
by n matrix A is formed as
AΓÇóP =
QΓÇóR where P is a
permutation matrix, Q is a mxn
(mxm if m<n) orthogonal
matrix and R is a nxn
(mxn if m<n) upper triangular
(upper trapezoidal if m<n) matrix.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CQR.R">
<summary>Gets the R factor, the upper triangular part
of the QR factorization.</summary>
<remarks>The QR factorization of a general m
by n matrix A is formed as
AΓÇóP =
QΓÇóR where P is a
permutation matrix, Q is a mxn
(mxm if m<n) orthogonal
matrix and R is a nxn
(mxn if m<n) upper triangular
(upper trapezoidal if m<n) matrix.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CQR.Rows">
<summary>Gets the number of rows of the matrix that is represented by
the factorization.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.CSVD">
<summary>Represents the Singular Value Decomposition
(SVD) of a general complex matrix.</summary>
<remarks> The Singular Value Decomposition
(SVD) of a mxn matrix
A is written A =
U•Σ•VH
where Σ is an nxn
(mxn if m<n) matrix
which is zero except for its min(m,n)
diagonal elements, U is an
mxn (mxm if
m<n) orthogonal/unitary matrix, and
V is an nxn
orthogonal/unitary matrix.
The diagonal elements of Σ are the
singular values of A; they are real and
non-negative, and are returned in descending order.
The first min(m,n) columns of
U and V are the left and
right singular vectors of A.
</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CSVD._ctor">
<summary>Initializes a new instance of the
CSVD
class computing the Singular Value Decomposition
(SVD) of a general complex matrix.</summary>
<remarks>The
CSVD
constructor never fails.
Succeeded property indicates whether the internal routines have
managed to calculate all the singular values of the matrix.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CSVD._ctor(Bluebit.MatrixLibrary.CMatrix)">
<summary>Initializes a new instance of the
CSVD
class computing the Singular Value Decomposition
(SVD) of a general complex matrix.</summary>
<remarks>The
CSVD
constructor never fails.
Succeeded property indicates whether the internal routines have
managed to calculate all the singular values of the matrix.</remarks>
<param name="matrix">A
CMatrix
object containing the matrix whose Singular Value
Decomposition will be computed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CSVD._ctor(Bluebit.MatrixLibrary.CMatrix,System.Boolean)">
<summary>Initializes a new instance of the
CSVD
class computing the Singular Value Decomposition
of a general complex matrix, specifying whether the singular
vectors (U and V matrices) will
be computed.</summary>
<remarks>The
CSVD
constructor never fails.
Succeeded property indicates whether the internal routines have
managed to calculate all the singular values of the matrix.</remarks>
<param name="matrix">A
CMatrix
object containing the matrix whose Singular Value
Decomposition will be computed.</param>
<param name="singularValuesOnly">If true then only singular values are
computed; if false then both singular values and
singular vectors (U and V matrices) are calculated.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CSVD.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CSVD.PseudoInverse">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix that is represented by this singular value
decomposition.Returns the Moore-Penrose inverse (pseudoinverse) of
the matrix that is represented by this singular value
decomposition.</summary>
<remarks> If A+ is the Moore-Penrose inverse
(pseudoinverse) of matrix A then it satisfies
the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ =A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=A+ΓÇóA
</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CSVD.PseudoInverse">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix that is represented by this singular value
decomposition.</summary>
<remarks> If A+ is the Moore-Penrose inverse
(pseudoinverse) of matrix A then it satisfies
the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ =A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=A+ΓÇóA
</remarks>
<returns>A
CMatrix
object representing the Moore-Penrose inverse of the factored
matrix.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CSVD.PseudoInverse(System.Double)">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix that is represented by this singular value
decomposition.</summary>
<remarks> If A+ is the Moore-Penrose inverse
(pseudoinverse) of matrix A then it satisfies
the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ =A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=A+ΓÇóA
</remarks>
<returns>A
CMatrix
object representing the Moore-Penrose inverse of the factored
matrix.</returns>
<param name="tolerance">A
double specifying the value under which the singular values of
the matrix are considered to be zero.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CSVD.Rank">
<summary>Returns the matrix rank.</summary>
<remarks>The matrix rank is defined as the number nonzero singular
values.The matrix rank is defined as the number nonzero singular
values.</remarks>
<returns>An
integer value representing the matrix rank.An
integer value representing the matrix rank.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CSVD.Rank">
<summary>Returns the matrix rank.</summary>
<returns>An
integer value representing the matrix rank.</returns>
<remarks>The matrix rank is defined as the number of its nonzero
singular values.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CSVD.Rank(System.Double)">
<summary>Returns the matrix rank.</summary>
<remarks>The matrix rank is defined as the number of its nonzero
singular values.</remarks>
<returns>An
integer value representing the matrix rank.</returns>
<param name="tolerance">A
double specifying the value under which the singular values of
the matrix are considered to be zero.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CSVD.S">
<summary>Returns the Σ part of the singular value
decomposition.</summary>
<remarks> The Singular Value Decomposition
(SVD) of a mxn matrix
A is written A =
U•Σ•VH
where Σ is an nxn
(mxn if m<n) matrix
which is zero except for its min(m,n)
diagonal elements, U is an
mxn (mxm if
m<n) orthogonal/unitary matrix, and
V is an nxn
orthogonal/unitary matrix.
The diagonal elements of Σ are the
singular values of A; they are real and
non-negative, and are returned in descending order.
The first min(m,n) columns of
U and V are the left and
right singular vectors of A.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CSVD.SingularValue(System.Int32)">
<summary>Gets the specified singular value.</summary>
<param name="index">A zero-based index specifying the singular value to
return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CSVD.SingularValues">
<summary>Gets a vector containing all the computed singular
values.</summary>
<remarks>The singular values are ordered in descending order.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CSVD.Succeeded">
<summary>Indicates whether the all singular values were calculated
successfully.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CSVD.U">
<summary>Returns the U part of the singular value
decomposition.</summary>
<remarks> The Singular Value Decomposition
(SVD) of a mxn matrix
A is written A =
U•Σ•VH
where Σ is an nxn
(mxn if m<n) matrix
which is zero except for its min(m,n)
diagonal elements, U is an
mxn (mxm if
m<n) orthogonal/unitary matrix, and
V is an nxn
orthogonal/unitary matrix.
The diagonal elements of Σ are the
singular values of A; they are real and
non-negative, and are returned in descending order.
The first min(m,n) columns of
U and V are the left and
right singular vectors of A.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CSVD.V">
<summary>Returns the V part of the singular value
decomposition.</summary>
<remarks> The Singular Value Decomposition
(SVD) of a mxn matrix
A is written A =
U•Σ•VH
where Σ is an nxn
(mxn if m<n) matrix
which is zero except for its min(m,n)
diagonal elements, U is an
mxn (mxm if
m<n) orthogonal/unitary matrix, and
V is an nxn
orthogonal/unitary matrix.
The diagonal elements of Σ are the
singular values of A; they are real and
non-negative, and are returned in descending order.
The first min(m,n) columns of
U and V are the left and
right singular vectors of A.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CSVD.VH">
<summary>Returns the Hermitian transpose (adjoin) of the
V part of the singular value decomposition.</summary>
<remarks> The Singular Value Decomposition
(SVD) of a mxn matrix
A is written A =
U•Σ•VH
where Σ is an nxn
(mxn if m<n) matrix
which is zero except for its min(m,n)
diagonal elements, U is an
mxn (mxm if
m<n) orthogonal/unitary matrix, and
V is an nxn
orthogonal/unitary matrix.
The diagonal elements of Σ are the
singular values of A; they are real and
non-negative, and are returned in descending order.
The first min(m,n) columns of
U and V are the left and
right singular vectors of A.</remarks>
</member>
<member name="T:Bluebit.MatrixLibrary.CSymEigen">
<summary>The
CSymEigen class is used to compute the
eigenvalues and optionally the
eigenvectors of a complex Hermitian matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CSymEigen._ctor">
<summary>Initializes a new instance of the
CSymEigen class computing the eigen decomposition of a complex
Hermitian matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CSymEigen._ctor(Bluebit.MatrixLibrary.CMatrix)">
<summary>Initializes a new instance of the
CSymEigen class computing the eigenvalues and the eigenvectors
of a complex Hermitian matrix.</summary>
<remarks>No check is made if matrix is actually Hermitian and
only its lower triangular part is used in calculations.</remarks>
<param name="matrix">A
CMatrix
object representing the complex Hermitian matrix whose eigenvalues
and right eigenvectors are to be computed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CSymEigen._ctor(Bluebit.MatrixLibrary.CMatrix,System.Boolean)">
<summary>Initializes a new instance of the
CSymEigen class computing the eigenvalues and optionally the
eigenvectors of a complex Hermitian matrix.</summary>
<param name="matrix">A
CMatrix
object representing the complex Hermitian matrix whose eigenvalues
and right eigenvectors are to be computed.</param>
<param name="eigenvectors">A
boolean value specifying whether eigenvectors will be
calculated.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CSymEigen.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CSymEigen.D">
<summary>Gets a real diagonal matrix, containing all the computed
eigenvalues in its main diagonal.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CSymEigen.Eigenvalue(System.Int32)">
<summary>Gets the specified eigenvalue.</summary>
<param name="index">A zero-based index specifying the eigenvalue to
return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CSymEigen.Eigenvalues">
<summary>Returns a vector containing all the computed
eigenvalues.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CSymEigen.Eigenvector(System.Int32)">
<summary>Gets the specified eigenvector.</summary>
<remarks>If the eigenvectors parameter of the
CSymEigen class constructor is set to false,
the eigenvectors are not calculated and
Eigenvector property returns a
null reference (Nothing in Visual
Basic).</remarks>
<param name="index">An index specifying the eigenvector to return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CSymEigen.Eigenvectors">
<summary>Gets the eigenvectors matrix.</summary>
<remarks>If the eigenvectors parameter of the
CSymEigen class constructor is set to false,
the eigenvectors are not calculated and
Eigenvectors property returns a
null reference (Nothing in Visual
Basic).</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.CSymEigen.Size">
<summary>Gets the size of matrix that is represented by this eigen
decomposition.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CSymEigen.Succeded">
<summary>Indicates whether the eigenvalues-eigenvectors calculation
succeeded to complete.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.CVector">
<summary>Represents a vector having
complex
floating point numbers as elements.</summary>
<remarks>CVector class is used as to represent a
complex vector. Its methods can be used to perform vector
operations and data manipulation.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector._ctor">
<summary>Initializes a new instance of the
CVector
class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector._ctor">
<summary>Initializes a new instance of the
CVector
class creating a vector of length equal to 3.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector._ctor(Bluebit.MatrixLibrary.Complex[])">
<summary>Initializes a new instance of the
CVector
class using the content of an array.</summary>
<param name="array">The array of
Complex
structures whose content will be used to initialize the elements of
the newly created
CVector
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector._ctor(Bluebit.MatrixLibrary.CVector)">
<summary>Creates a new instance of the
CVector
class, copying the content of an existing vector.</summary>
<remarks>This is the copy constructor of the
CVector
class.</remarks>
<param name="vector">The
CVector
object whose elements will by copied into the newly created
vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector._ctor(System.Int32)">
<summary>Creates a new instance of the
CVector
class specifying its length.</summary>
<param name="size">The length of the newly created vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector._ctor(System.Int32,Bluebit.MatrixLibrary.Complex)">
<summary>Creates a new instance of the
CVector
class specifying its length and a value to initialize its
components.</summary>
<param name="size">An
integer value specifying the length of the newly created
vector.</param>
<param name="value">A
Complex
that will be used to initialize vector elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector._ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>Initializes a new instance of the
CVector
class and uses the specified</summary>
<remarks>This constructor implements the</remarks>
<param name="info"/>
<param name="context">An instance of the</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.AbsSum">
<summary>Returns the sum of magnitudes of the vector elements.</summary>
<returns>A
double value equal to the sum of magnitudes of the vector
elements.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Add">
<summary>Adds vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Add(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.Complex)">
<summary>Adds a vector with a scalar.</summary>
<returns>A
CVector
object representing the result of the addition.</returns>
<param name="vector">A
CVector
instance representing the vector to add with the scalar.</param>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
value representing the scalar to add with the vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Add(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Adds two vectors.</summary>
<returns>A
CVector
object that represents the result of the addition.</returns>
<param name="vector1">A
CVector
instance on the left side of the addition operator.</param>
<param name="vector2">A
CVector
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ApplyFunction">
<summary>Returns a new
CVector
object, whose elements are the result of applying the specified
complex
function to the elements of this vector.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ApplyFunction(Bluebit.MatrixLibrary.ComplexFunction1Cmp)">
<summary>Returns a new
CVector
object, whose elements are the result of applying the specified
complex
function to the elements of this vector.</summary>
<returns>A new
CVector
object with the same length as this vector, whose elements are the
results of applying the specified function to the elements
of this vector.</returns>
<remarks> The elements of this vector are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
CVector object.</remarks>
<param name="function">A delegate to a function that takes one
complex
parameter and returns a
complex.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ApplyFunction(Bluebit.MatrixLibrary.ComplexFunction1Cmp1Int,System.Int32)">
<summary>Returns a new
CVector
object, whose elements are the result of applying the specified
complex
function to the elements of this vector.</summary>
<remarks> The elements of this vector are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
CVector object.</remarks>
<returns>A new
CVector
object with the same length as this vector, whose elements are the
results of applying the specified function to the elements
of this vector.</returns>
<param name="function">A delegate to a function that takes as its first parameter a
complex,
as a second parameter an
integer and returns a
complex.</param>
<param name="value">The
integer value that will be passed to the second parameter of
the function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ApplyFunction(Bluebit.MatrixLibrary.ComplexFunction1Cmp2Int,System.Int32)">
<summary>Returns a new
CVector
object, whose elements are the result of applying the specified
complex
function to the elements of this vector.</summary>
<returns> A new
CVector object with the same length as this vector, whose
elements are the results of applying the specified
function to the elements of this vector.</returns>
<remarks> The elements of this vector are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
CVector object.
The index of the vector element is
passed as the third parameter of the function
represented by the delegate.</remarks>
<param name="function">A delegate to a function that takes as its first parameter a
complex,
as a second and third parameter an
integer and returns a
complex.</param>
<param name="value">The
integer value that will be passed to the second parameter of
the function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ApplyFunction(Bluebit.MatrixLibrary.ComplexFunction2Cmp,Bluebit.MatrixLibrary.Complex)">
<summary>Returns a new
CVector
object, whose elements are the result of applying the specified
complex
function to the elements of this vector.</summary>
<returns>A new
CVector
object with the same length as this vector, whose elements are the
results of applying the specified function to the elements
of this vector.</returns>
<remarks> The elements of this vector are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
CVector object.</remarks>
<param name="function">A delegate to a function that takes as its first and second
parameter a
complex
and returns a
complex.</param>
<param name="value">The
complex
value that will be passed to the second parameter of the function
represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ApplyFunction(Bluebit.MatrixLibrary.ComplexFunction2Cmp2Int,Bluebit.MatrixLibrary.Complex,System.Int32)">
<summary>Returns a new
CVector
object, whose elements are the result of applying the specified
complex
function to the elements of this vector.</summary>
<returns>A new
CVector
object with the same length as this vector, whose elements are the
results of applying the specified function to the elements
of this vector.</returns>
<remarks> The elements of this vector are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
CVector object.
The index of the vector element is
passed as the forth parameter of the function
represented by the delegate.</remarks>
<param name="function">A delegate to a function that takes as its first and second
parameter a
complex,
as its third and forth parameter an
integer, and returns a
complex.</param>
<param name="value1">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
value that will be passed to the second parameter of the function
represented by the delegate.</param>
<param name="value2">An
integer value that will be passed to the third parameter of the
function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Clear">
<summary>Sets the value of all the
CVector
elements to zero.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Clone">
<summary>Creates a duplicate of this
CVector
object.</summary>
<remarks>A deep copy is created. Each
CVector
object references different data.</remarks>
<returns>A new
CVector
object that contains the same data as this.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Divide">
<summary>Divides complex vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Divide(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CVector)">
<summary>Divides a scalar by a complex vector.</summary>
<returns>A
CVector
object representing the result of the scalar-vector
division.</returns>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar on the left of the division
operator.</param>
<param name="vector">A
CVector
object representing the vector on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Divide(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.Complex)">
<summary>Divides a complex vector by a scalar.</summary>
<returns>A
CVector
object representing the result of the vector-scalar
division.</returns>
<param name="vector">A
CVector
object representing the vector on the left of the division
operator.</param>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Divide(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Divides two complex vectors.</summary>
<returns>A
CVector
object representing the result of the vector-vector
division.</returns>
<param name="vector1">A
CVector
object representing the vector on the left of the division
operator.</param>
<param name="vector2">A
CVector
object representing the vector on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.DotProduct">
<summary>Returns the dot product of vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.DotProduct(Bluebit.MatrixLibrary.CVector)">
<summary>Returns the dot product of this vector with another
vector.</summary>
<returns>A
Complex
representing the dot product of this vector with the specified
vector.</returns>
<param name="vector">A
CVector
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.DotProduct(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Returns the dot product of two complex vectors.</summary>
<returns>A
Complex
representing the dot product of the two vectors.</returns>
<param name="vector1">A
CVector
object representing the first complex vector.</param>
<param name="vector2">A
CVector
object representing the second complex vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Equals(System.Object)">
<summary>Returns a value indicating whether this
CVector
object is equal to another vector.</summary>
<returns>true if obj is an instance of the
CVector
class and represents a vector that has the same length as this
instance and also all the elements of obj are equal to the
elements of this instance; false otherwise.</returns>
<param name="obj">An object to compare with this instance of the
CVector
class.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.FillRandom">
<summary>Fills the
CVector
object with random values.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.FillRandom">
<summary>Fills the
CVector
object with random values ranging from 0 to 10, rounded to zero
decimal places.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.FillRandom(System.Double,System.Double)">
<summary>Fills the
CVector
object with random values ranging from lower to upper bound,
rounded to 0 decimal places.</summary>
<remarks>Use FillRandom method in order to quickly
fill the vector with random values, while coding, testing and
debugging your application.</remarks>
<param name="lowerBound">A
href="ms-help://MS.NETFrameworkSDK/cpref/html/frlrfSystemDoubleClassTopic.htm">double
specifying the lower limit of the random values that will be
used.</param>
<param name="upperBound">A
href="ms-help://MS.NETFrameworkSDK/cpref/html/frlrfSystemDoubleClassTopic.htm">double
specifying the upper limit of the random values that will be
used.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.FillRandom(System.Double,System.Double,System.Int32)">
<summary>Fills the
CVector
object with random values ranging from lower bound to upper bound,
rounded to the specified number of decimal places.</summary>
<remarks>Use FillRandom method in order to quickly
fill the vector with random values, while coding, testing and
debugging your application.</remarks>
<param name="lowerBound">A
double specifying the lower limit of the random values that
will be used.</param>
<param name="upperBound">A
double specifying the upper limit of the random values that
will be used.</param>
<param name="decimals">An
integer specifying the number of decimal places to which random
values will be rounded to.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.GetHashCode">
<summary>Returns the hash code of the current
ShortParentItemName.</summary>
<returns>A 32-bit signed integer that represents the hash
code.</returns>
<remarks>This method overrides Object.GetHashcode and
generates the same hash code for two objects that are equal
according to the Equals method.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>Implements the
ISerializable interface and returns the data needed to
serialize the
CVector
class.</summary>
<remarks>This method implements the ISerializable
interface.</remarks>
<param name="info">A
SerializationInfo object.</param>
<param name="context">A
StreamingContext structure.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.HasINFs">
<summary>Returns a value indicating whether the current vector
contains any elements that evaluate to negative or
positive infinity.</summary>
<returns>true if any of the vector elements evaluates
to negative or positive infinity;
otherwise false.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.HasNaNs">
<summary>Returns a value indicating whether the current vector
contains any elements that evaluate to NaN
values.</summary>
<returns>true if any of the vector elements evaluates
to a NaN value; otherwise
false.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Imag">
<summary>Returns a
Vector
object containing the imaginary parts of the
CVector
elements.</summary>
<returns>A
Vector
object that contains just the imaginary parts of the
CVector
object's elements.</returns>
<remarks>Use this method together with the
Real method in order to split a complex matrix to its real and
imaginary parts.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.IsFinite">
<summary>Returns a value indicating whether the current vector
contains any elements that evaluate either to NaN
or to negative or positive
infinity.</summary>
<returns>true if all elements of the current vector
have a value other NaN, negative
infinity, positive
infinity; otherwise false.</returns>
<remarks> Most of the internal routines expect that input matrices
or vectors do not contain any negative infinity, positive
infinity, or NaN values in order to perform
flawlessly.
If you suspect that the current matrix or vector may
contain any NaN or infinity
values, use the IsFinite method before any
further processing.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Multiply">
<summary>Multiplies vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Multiply(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.Complex)">
<summary>Multiplies a vector by a scalar.</summary>
<returns>A
CVector
object representing the result of the vector-scalar
multiplication.</returns>
<param name="vector">A
CVector
instance representing the vector to multiply by the scalar.</param>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
value representing the scalar by which to multiply the
vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Multiply(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Multiplies two vectors.</summary>
<returns>A
CVector
object that represents the result of the multiplication.</returns>
<param name="vector1">A
CVector
instance on the left side of the multiplication operator.</param>
<param name="vector2">A
CVector
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Norm">
<summary>Returns the Euclidean norm of the vector.</summary>
<returns>A
double equal to the Euclidean norm of the vector.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Normalize(Bluebit.MatrixLibrary.NormalizeMode)">
<summary> Normalizes the current vector according to the specified
mode.</summary>
<remarks> The following table lists the values of
NormalizeMode enumeration and their effect on vector
normalization.
Member
Description
MaximumOne
Normalizes vector elements so that the
biggest element is 1.
UnitLength
Normalizes the vector so that it
becomes a unit length vector(the sum of squares of
vector elements is 1).
ZScores
Normalizes vector elements to zscores
(values having zero mean and unit standard
deviation).
</remarks>
<param name="mode">A
NormalizeMode enumeration value indicating how this vector will
be normalized.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Addition">
<summary>Adds complex vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Addition(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CVector)">
<summary>Adds a scalar and a vector.</summary>
<returns>A
CVector
object representing the result of the addition.</returns>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar on the left side of the addition
operator.</param>
<param name="vector">A
CVector
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Addition(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.Complex)">
<summary>Adds a vector and a scalar.</summary>
<returns>A
CVector
object representing the result of the addition.</returns>
<param name="vector">A
CVector
instance on the left side of the addition operator.</param>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Addition(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Adds two vectors.</summary>
<returns>A
CVector
object representing the result of the addition.</returns>
<param name="vector1">A
CVector
instance on the left side of the addition operator.</param>
<param name="vector2">A
CVector
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Division">
<summary>Divides complex vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Division(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CVector)">
<summary>Divides a scalar by a complex vector.</summary>
<returns>A
CVector
object representing the result of the scalar-vector
division.</returns>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar on the left of the division
operator.</param>
<param name="vector">A
CVector
object representing the vector on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Division(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.Complex)">
<summary>Divides a complex vector by a scalar.</summary>
<returns>A
CVector
object representing the result of the vector-scalar
division.</returns>
<param name="vector">A
CVector
object representing the vector on the left of the division
operator.</param>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Division(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Divides two complex vectors.</summary>
<returns>A
CVector
object representing the result of the vector-vector
division.</returns>
<param name="vector1">A
CVector
object representing the vector on the left of the division
operator.</param>
<param name="vector2">A
CVector
object representing the vector on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Equality(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Tests whether two
CVector
objects represent equal vectors.</summary>
<returns>true if vectors are equal; otherwise
false.</returns>
<remarks> The equality operator returns false if
vectors are not of the same length.
The elements of the compared vectors must be exactly
equal in order to the equality operator return
true.</remarks>
<param name="vector1">A
CVector
instance on the left side of the equality operator.</param>
<param name="vector2">A
CVector
instance on the right side of the equality operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Implicit">
<summary>Converts a
CVector
object.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Implicit(Bluebit.MatrixLibrary.Complex[])">
<summary>Converts an array of
complex
type to a
CVector
object.</summary>
<returns>A
CVector
object containing the same values as the
complex
array.</returns>
<param name="array">The
complex
array to convert.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Implicit(Bluebit.MatrixLibrary.CVector)">
<summary>Converts
CVector
to a
CMatrix
object.</summary>
<returns>A one-column
CMatrix
object containing the same values as the converted
CVector.</returns>
<param name="vector">The
CVector
object to convert.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Inequality(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Tests whether two
CVector
objects represent equal vectors.</summary>
<returns>true if vectors are not equal; otherwise
false.</returns>
<param name="vector1">A
CVector
instance on the left side of the equality operator.</param>
<param name="vector2">A
CVector
instance on the right side of the equality operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Multiply">
<summary>Multiplies vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Multiply(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CVector)">
<summary>Multiplies a scalar by a complex vector.</summary>
<returns>A
CVector
object representing the result of the multiplication.</returns>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar on the left of the multiplication
operator.</param>
<param name="vector">A
CVector
instance on the right of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Multiply(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.Complex)">
<summary>Multiplies a complex vector by a scalar.</summary>
<returns>A
CVector
object representing the result of the multiplication.</returns>
<param name="vector">A
CVector
instance on the left of the multiplication operator.</param>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar on the right of the multiplication
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Multiply(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Multiplies two complex vectors.</summary>
<returns>A
CVector
object representing the result of the multiplication.</returns>
<param name="vector1">A
CVector
instance on the left of the multiplication operator.</param>
<param name="vector2">A
CVector
instance on the right of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Subtraction">
<summary>Subtracts complex vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Subtraction(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CVector)">
<summary>Subtracts a complex vector from a scalar.</summary>
<returns>A
CVector
object representing the result of the subtraction.</returns>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar on the left of the subtraction
operator.</param>
<param name="vector">A
CVector
instance on the right of the subtraction operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Subtraction(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.Complex)">
<summary>Subtracts a scalar from a complex vector.</summary>
<returns>A
CVector
object representing the result of the subtraction.</returns>
<param name="vector">A
CVector
instance on the left of the subtraction operator.</param>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar on the right of the subtraction
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.op_Subtraction(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Subtracts a vector from another vector.</summary>
<returns>A
CVector
instance on the left of the subtraction operator.</returns>
<param name="vector1">A
CVector
instance on the left of the subtraction operator.</param>
<param name="vector2">A
CVector
instance on the right of the subtraction operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Real">
<summary>Returns a
Vector
object containing the real parts of the
CVector
elements.</summary>
<returns>A
Vector
object that contains just the real parts of the
CVector
object's elements.</returns>
<remarks>Use this method together with the
Imag method in order to split a complex matrix to its real and
imaginary parts.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Resize(System.Int32)">
<summary>Resizes the vector preserving its content.</summary>
<param name="size">An
integer specifying the new length of the vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Subtract">
<summary>Subtracts complex vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Subtract(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.CVector)">
<summary>Subtracts a complex vector from a scalar.</summary>
<returns>A
CVector
object representing the result of the subtraction.</returns>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar from which to subtract the vector.</param>
<param name="vector">A
CVector
instance representing the vector to subtract from the
scalar.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Subtract(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.Complex)">
<summary>Subtracts a scalar from a complex vector.</summary>
<returns>A
CVector
object representing the result of the subtraction.</returns>
<param name="vector">A
CVector
instance from which to subtract the scalar.</param>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar to subtract from the vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Subtract(Bluebit.MatrixLibrary.CVector,Bluebit.MatrixLibrary.CVector)">
<summary>Subtracts a vector from another vector.</summary>
<returns>A
CVector
object representing the result of the subtraction.</returns>
<param name="vector1">A
CVector
instance on the left of the subtraction operator.</param>
<param name="vector2">A
CVector
instance on the right of the subtraction operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.Sum">
<summary>Returns the sum of vector elements.</summary>
<returns>A
Complex
equal to the sum of vector elements.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ToArray">
<summary>Returns an array of type
complex
containing the same values as the current vector.</summary>
<returns>An array of type
complex
containing the same values as the current vector.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ToCMatrix">
<summary>Converts current vector to a
CMatrix
object.</summary>
<returns>A one-column
CMatrix
object containing the same values as this vector.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ToString">
<summary>Converts this instance of
CVector
to a formatted string.</summary>
<returns>A formatted
string containing all vector elements.</returns>
<remarks>The "F3" format string is used to format each vector element.
A space character is used as a separator of vector elements. The
right and left borders are set to "| " and " |" strings
respectively. The new line character "\n" is added at the end of
the string.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ToString">
<summary>Converts this instance of
CVector
to a formatted string using the default values for format string,
separator, left and right borders, and end of line
characters.</summary>
<returns>A formatted
string containing all vector elements.</returns>
<remarks>The "F3" format string is used to format each vector element.
A space character is used as a separator of vector elements. The
right and left borders are set to "| " and " |" strings
respectively. The new line character "\n" is added at the end of
the string.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ToString(System.IFormatProvider,System.String)">
<summary>Converts this instance of the ShortParentItemName
object to a formatted string specifying culture-specific format
information and a format string.</summary>
<param name="provider"> An
IFormatProvider that supplies culture-specific formatting
information.</param>
<param name="format">A format
string that will be used to convert all matrix elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ToString(System.IFormatProvider,System.String,System.String,System.String,System.String,System.String)">
<summary>Converts this instance of ShortParentItemName to a
formatted string specifying culture-specific format information, a
format string, a separator, left and right borders and end of line
characters.</summary>
<param name="provider"> An
IFormatProvider that supplies culture-specific formatting
information.</param>
<param name="format">A
string string that will be used to convert all matrix
elements.</param>
<param name="separator">A
string that will be used to separate matrix elements.</param>
<param name="leftBorder">A
string that will be added at the beginning of each matrix
row.</param>
<param name="rightBorder">A
string that will be added at the end of each matrix row.</param>
<param name="endVector">A
string that will be added at the end of each matrix row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ToString(System.String)">
<summary>Converts this instance of
CVector
to a formatted string specifying a format string, and using the the
default values for separator, left and right borders, and end of
line characters.</summary>
<remarks>A space character is used as a separator of vector elements.
The left and right borders are set to "| " and " |" strings
respectively. The new line character "\n" is added at the end of
the string.</remarks>
<returns>A formatted
string containing all vector elements.</returns>
<param name="format">A format string that will be used to convert all vector
elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ToString(System.String,System.String)">
<summary>Converts this instance of
CVector
to a formatted string specifying a format string, and a separator
and using the default values for left and right borders and end of
line characters.</summary>
<returns>A formatted
string containing all vector elements.</returns>
<remarks>The left and right borders are set to "| " and " |" strings
respectively. The new line character "\n" is added at the end of
the string.</remarks>
<param name="format">A format string that will be used to convert all vector
elements.</param>
<param name="separator">A
string that will be used to separate vector elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.CVector.ToString(System.String,System.String,System.String,System.String,System.String)">
<summary>Converts this instance of
CVector
to a formatted string specifying a format string, a separator, left
and right borders and end of line characters.</summary>
<returns>A formatted
string containing all vector elements.</returns>
<param name="format">A format string that will be used to convert all vector
elements.</param>
<param name="separator">A
string that will be used to separate vector elements.</param>
<param name="leftBorder">A
string that will be added at the beginning of the
string.</param>
<param name="rightBorder">A
string that will be added at the end of the string.</param>
<param name="endVector">A
string that will be added at the end of the string.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CVector.Data">
<summary>This property is used while serializing and deserializing the
CVector
object and is not intended to be used directly from your
code.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CVector.DataPtr">
<summary>Gets the address of the unmanaged (native) memory block
containing the vector's elements.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.CVector.Item(System.Int32)">
<summary>Gets or sets a single vector element.</summary>
<remarks>This is the default property of the
CVector
object when using it in Visual Basic. It is the indexer of the
CVector
object when used in C#.</remarks>
<param name="index">A zero based index of the element to get or to set.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.CVector.Length">
<summary>Gets or sets the vector length.</summary>
<remarks>Setting the vector length to new value is the same as using
the
Resize method.</remarks>
</member>
<member name="T:Bluebit.MatrixLibrary.Eigen">
<summary>The
Eigen
class is used to compute the eigenvalues and the
left and/or right eigenvectors of a general square
real matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Eigen._ctor">
<summary>Initializes a new instance of the
CEigen
class computing the eigen decomposition of a general square real
matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Eigen._ctor(Bluebit.MatrixLibrary.Matrix)">
<summary>Creates a new instance of the
Eigen
class, computing the eigenvalues and the right eigenvectors of a
general square real matrix, with preliminary matrix
balancing.</summary>
<remarks>Only the right eigenvectors are computed if this constructor
is used; the
LeftEigenvector,
LeftEigenvectors properties will return a null
reference (Nothing in Visual Basic).</remarks>
<param name="matrix">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.Matrix.html">Matrix
object representing the square real matrix whose eigenvalues and
right eigenvectors are to be computed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Eigen._ctor(Bluebit.MatrixLibrary.Matrix,System.Boolean)">
<summary>Creates a new instance of the
Eigen
class computing the eigenvalues and optionally the right
eigenvectors of a general real complex matrix, with preliminary
matrix balancing.</summary>
<remarks>Using a false value for the
rightEigenvectors parameter allows you to calculate only
the eigenvalues in cases where the eigenvectors are not
needed.</remarks>
<param name="matrix">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.Matrix.html">Matrix
object representing the square real matrix whose eigenvalues and
optionally its right eigenvectors are to be computed.</param>
<param name="rightEigenvectors">A
href="ms-help://MS.NETFrameworkSDK/cpref/html/frlrfSystemBooleanClassTopic.htm">boolean
value specifying whether the right eigenvectors will be
computed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Eigen._ctor(Bluebit.MatrixLibrary.Matrix,System.Boolean,System.Boolean)">
<summary>Creates a new instance of the
Eigen
class computing the eigenvalues and optionally the right and/or the
left eigenvectors of a general square real matrix, with preliminary
matrix balancing.</summary>
<remarks>This constructor allows you to specify which of the right
and/or left eigenvectors will be computed.</remarks>
<param name="matrix">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.Matrix.html">Matrix
object representing the square real matrix whose eigenvalues and
optionally its right and/or left eigenvectors are to be
computed.</param>
<param name="rightEigenvectors">A
href="ms-help://MS.NETFrameworkSDK/cpref/html/frlrfSystemBooleanClassTopic.htm">boolean
value specifying whether the right eigenvectors will be
computed.</param>
<param name="leftEigenvectors">A
href="ms-help://MS.NETFrameworkSDK/cpref/html/frlrfSystemBooleanClassTopic.htm">boolean
value specifying whether the left eigenvectors will be
computed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Eigen._ctor(Bluebit.MatrixLibrary.Matrix,System.Boolean,System.Boolean,Bluebit.MatrixLibrary.BalanceType)">
<summary>Creates a new instance of the
CEigen
class computing the eigenvalues and optionally the right and/or the
left eigenvectors of a general square real matrix, using the
specified type of preliminary matrix balancing.</summary>
<remarks> Balancing a matrix means permuting its rows and columns
to make it more nearly upper triangular, and applying
similarity transformations to make its rows and columns closer
in norm.
Generally balancing improves the accuracy of the
computations. However, there are cases that a matrix contains
near to zero elements that are due to roundoff errors. If
balancing is used, those elements may become the same
significant as others leading to incorrect eigenvectors. To
avoid such a situation set the balance parameter to
false.</remarks>
<param name="matrix">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.Matrix.html">Matrix
object representing the square real matrix whose eigenvalues and
optionally its right and/or left eigenvectors are to be
computed.</param>
<param name="rightEigenvectors">A
boolean value specifying whether the right eigenvectors will be
computed.</param>
<param name="leftEigenvectors">A
boolean value specifying whether the left eigenvectors will be
computed.</param>
<param name="balance">A
BalanceType enumeration specifying whether preliminary
balancing will be used and the type of balancing.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Eigen.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.Eigen.D">
<summary>Gets a complex diagonal matrix, containing all the computed
eigenvalues in its main diagonal.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Eigen.Eigenvalue(System.Int32)">
<summary>Gets the specified eigenvalue.</summary>
<param name="index">A zero-based index specifying the eigenvalue to
return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.Eigen.Eigenvalues">
<summary>Returns a vector containing all the computed
eigenvalues.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Eigen.Eigenvector(System.Int32)">
<summary>Gets the specified right eigenvector.</summary>
<remarks>If the rightEigenvectors parameter of the
CEigen
class constructor is set to false, the right
eigenvectors are not calculated and Eigenvector
property returns a null reference
(Nothing in Visual Basic).</remarks>
<param name="index">An index specifying the eigenvector to return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.Eigen.Eigenvectors">
<summary>Gets the right eigenvectors matrix.</summary>
<remarks>If the rightEigenvectors parameter of the
Eigen
class constructor is set to false, the right
eigenvectors are not calculated and the
Eigenvectors property returns a
null reference (Nothing in Visual
Basic).</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.Eigen.LeftEigenvector(System.Int32)">
<summary>Gets the specified left eigenvector.</summary>
<remarks>If the leftEigenvectors parameter of the
Eigen
class constructor is set to false, the left
eigenvectors are not calculated and the
Eigenvector property returns a
null reference (Nothing in Visual
Basic).</remarks>
<param name="index">An index specifying the eigenvector to return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.Eigen.LeftEigenvectors">
<summary>Gets the left eigenvectors matrix.</summary>
<remarks>If the leftEigenvectors parameter of the
Eigen
class constructor is set to false, the left
eigenvectors are not calculated and the
LeftEigenvectors property returns a
null reference (Nothing in Visual
Basic).</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.Eigen.Size">
<summary>Gets the size of matrix that is represented by this eigen
decomposition.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Eigen.Succeded">
<summary>Indicates whether the eigenvalues-eigenvectors calculation
succeeded to completion.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.IndexOutOfBoundsException">
<summary>Thrown when an index used in a property or method points to
an element not belonging to the matrix or to the vector.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.IndexOutOfBoundsException._ctor">
<summary>Creates a new instance of the
IndexOutOfBoundsException class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.IndexOutOfBoundsException._ctor">
<summary>Creates a new instance of the
IndexOutOfBoundsException with the default message.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.IndexOutOfBoundsException._ctor(System.String)">
<summary>Creates a new instance of the
IndexOutOfBoundsException with the specified message.</summary>
<param name="message">A
string containing the message describing the error.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.IndexOutOfBoundsException._ctor(System.String,System.Exception)">
<summary>Creates a new instance of the
IndexOutOfBoundsException with the specified message and inner
exception.</summary>
<param name="message">A
string containing the message describing the error.</param>
<param name="innerException">The inner Exception, if any, that threw the current
exception.</param>
</member>
<member name="T:Bluebit.MatrixLibrary.InvalidSizeException">
<summary>Thrown when a parameter specifying a dimension of a matrix or
a vector is negative or greater than the maximum size defined by
the effected license of the product.</summary>
<remarks> This exception is thrown when trying to set a dimension
of a matrix or of a vector to a non-positive number.
Trial editions of the library limit the maximum matrix
and vector sizes. Trying to declare bigger matrices or vector
will also result to this exception.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.InvalidSizeException._ctor">
<summary>Creates a new instance of the
InvalidSizeException class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.InvalidSizeException._ctor">
<summary>Creates a new instance of the
InvalidSizeException class with the default message.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.InvalidSizeException._ctor(System.String)">
<summary>Creates a new instance of the
InvalidSizeException class with the specified message.</summary>
<returns>Creates a new instance of the
InvalidSizeException class with the specified message.</returns>
<param name="message">A
string containing the message describing the error.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.InvalidSizeException._ctor(System.String,System.Exception)">
<summary>Creates a new instance of the
InvalidSizeException class with the specified message and inner
exception.</summary>
<param name="message">A
string containing the message describing the error.</param>
<param name="innerException">The inner Exception, if any, that threw the current
exception.</param>
</member>
<member name="T:Bluebit.MatrixLibrary.Licensing">
<summary>The licensing class provides properties returning information
about the in force license of the .NET Matrix
Library.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Licensing._ctor">
<summary>Creates a new instance of the
Licensing class.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Licensing.ExtendedLicense">
<summary>Returns a reference to the internal ExtendedLicense
class.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Licensing.IsTrial">
<summary>Gets a value indicating if the current license is a
Trial license.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Licensing.LicenseType">
<summary>Gets the license type.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Licensing.MaxSize">
<summary>Gets the maximum matrix size that can be used when creating
new matrices.</summary>
<remarks>
If the .NET Matrix Library is used with a
trial license, then the maximum matrix size is 6 by 6 and
this is the value returned from the
MaxSize property.
When .NET Matrix Library is used
with a commercial license then the MaxSize
property returns 2147483647. This is a theoretical limit.
The maximum matrix size that you can be used in practice
for calculations depends on the system configuration, and
mostly on the installed RAM.
A good rule of thumb to estimate the maximum matrix
you can use is the following:
Estimate the available physical memory of the
target machine.
Divide this value by 40 for real matrices or by
80 for complex matrices.
The resulting number represents the maximum
number of matrix elements that should be used on the
target machine.
Example: The available physical memory in a computer
is 200Mb. Dividing this value by 40 gives us 200,000,000/40
= 5,000,000. Our bigger matrix can have up to 5 million
elements. A matrix of that size can be a 5,000x1,000
matrix.
</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.Licensing.Organization">
<summary>Gets the the name of the organization that the license is
issued to.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Licensing.User">
<summary>Gets the the name of the user that the license is issued
to.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.LQ">
<summary>Represents an LQ factorization of a general
real matrix.</summary>
<remarks>The
LQ
class can be used to find the minimum-norm solution of an
underdetermined least-squares problem.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.LQ._ctor(Bluebit.MatrixLibrary.Matrix)">
<summary>Initializes a new instance of the
LQ
class computing the LQ factorization of a general
real matrix.</summary>
<param name="matrix">A
Matrix
object containing the matrix to factor.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.LQ.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.LQ.Solve(Bluebit.MatrixLibrary.Matrix)">
<summary>Solves an underdetermined system of linear equations using
the LQ factorization of a real matrix.</summary>
<returns>A
Matrix
object that contains the solution of the system of linear
equations.</returns>
<remarks> The Solve method finds a solution to the
system of linear equations
AΓÇóX = B
where:
A denotes the real matrix that has
been previously factored (represented now by its
LQ factorization).
B is the matrix whose columns
contain the right hand terms.
X is the solution matrix that is to
be computed.
The system can be solved with multiple right-hand
sides stored in the columns of the matrix
B. The columns of X are
the minimum norm solution vectors.
</remarks>
<param name="rightHands">A
Matrix
object containing the right-hand sides for the system of linear
equations.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.LQ.Cols">
<summary>Gets the number of columns of the matrix that is represented
by the factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.LQ.L">
<summary>Gets the factor L, the lower triangular
matrix of the LQ factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.LQ.Q">
<summary>Gets the factor Q, the orthogonal matrix of
the LQ factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.LQ.Rows">
<summary>Gets the number of rows of the matrix that is represented by
the factorization.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.LU">
<summary>Represents an LU factorization of a general
real matrix.</summary>
<remarks> The LU factorization of a general
m by n matrix is formed as A
= PΓÇóLΓÇóU
where P is a permutation matrix,
L is lower triangular with unit diagonal
elements (lower trapezoidal if m>n) and
U is upper triangular (upper trapezoidal if
m<n).
The
LU class can be used to solve systems of linear
equations and to calculate the inverse of a
matrix.
</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.LU._ctor(Bluebit.MatrixLibrary.Matrix)">
<summary>Initializes a new instance of the
LU
class computing the LU factorization of a general
complex matrix.</summary>
<remarks>LU
constructor never fails. The
IsSingular property indicates whether the matrix has been found
to be singular.</remarks>
<param name="matrix">A
Matrix
object containing the matrix to factor.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.LU.Determinant">
<summary>Returns the determinant of a square real matrix using its
LU factorization.</summary>
<returns>A
double that equals to the determinant of the matrix.</returns>
<remarks>Determinant can be calculated only for a square
matrix.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.LU.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.LU.GetPivots">
<summary>Gets an array of integers containing the pivot
indices.</summary>
<remarks> If Pivots() is the array returned from GetPivots method,
then Pivots(i) = k denotes that during factorization row k has
moved to row i.
The array that is returned from
GetPivots property can be used as a parameter
in
ReorderRows method in order to reconstruct the original
matrix.
This has the same effect as multiplying by the
P matrix but it executes faster.</remarks>
<returns>An array of type
Integer.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.LU.Inverse">
<summary>Returns the inverse of a square real matrix using its
LU factorization.</summary>
<returns>A
Matrix
object containing the inverse of the factored matrix.</returns>
<remarks>Matrix inverse can be calculated only for a square
non-singular matrix. The
IsSinular property can be used to check if the factored matrix
is singular before attempting to execute the
Inverse method.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.LU.Solve(Bluebit.MatrixLibrary.Matrix)">
<summary>Solves a system of linear equations with multiple right hands
using the LU factorization of a general real
matrix.</summary>
<returns>A
Matrix
object that contains the solution of the system of linear
equations.</returns>
<remarks> The Solve method finds the solution to
the system of linear equations
AΓÇóX = B
where:
A denotes the real square matrix that
has been previously factored (represented now by its
LU factorization).
B denotes the matrix whose columns
contain the right hand terms.
X denotes the solution matrix that is to
be computed.
The system can be solved with multiple right-hand sides
stored in the columns of the matrix B.</remarks>
<param name="rightHands">A
Matrix
object containing the right-hand sides for the system of linear
equations.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.LU.Cols">
<summary>Gets the number of columns of the matrix that is represented
by the factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.LU.IsSingular">
<summary>Gets a Boolean value indicating whether the
LU factorization represents a singular
matrix.</summary>
<remarks>Use IsSingular property to check for matrix
singularity, just before attempting to use the
Inverse or
Solve methods.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.LU.L">
<summary>Gets the L factor, the lower triangular part
of the LU factorization.</summary>
<remarks>The LU factorization of a general m
by n matrix is formed as A =
PΓÇóLΓÇóU where
P is a permutation matrix, L is
lower triangular with unit diagonal elements (lower trapezoidal if
m>n) and U is upper triangular (upper
trapezoidal if m<n).</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.LU.P">
<summary>Gets the P factor, the permutation matrix of
the LU factorization.</summary>
<remarks>The LU factorization of a general m
by n matrix is formed as A =
PΓÇóLΓÇóU where
P is a permutation matrix, L is
lower triangular with unit diagonal elements (lower trapezoidal if
m>n) and U is upper triangular (upper
trapezoidal if m<n).</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.LU.Rows">
<summary>Gets the number of rows of the matrix that is represented by
the factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.LU.U">
<summary>Gets the U factor, the upper triangular part
of the LU factorization.</summary>
<remarks>The LU factorization of a general m
by n matrix is formed as A =
PΓÇóLΓÇóU where
P is a permutation matrix, L is
lower triangular with unit diagonal elements (lower trapezoidal if
m>n) and U is upper triangular (upper
trapezoidal if m<n).</remarks>
</member>
<member name="T:Bluebit.MatrixLibrary.Matrix">
<summary>Represents a matrix having as elements
double floating point numbers.</summary>
<remarks>Matrix class is used as to represent a
general matrix with real number elements. Its methods can be used
to perform matrix operations and data manipulation.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor">
<summary>Initializes a new instance of the
Matrix
class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor">
<summary>Initializes a new instance of the
Matrix
class creating a 3x3 real matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor(System.Double,System.Int32,System.Int32)">
<summary>Initializes a new instance of the
Matrix
class using the content of a two-dimensional array, specifying the
size of the created matrix.</summary>
<remarks>If array is bigger than the specified matrix, the
extra values are ignored; if it is smaller the rest of the matrix
elements are filled with zero values.</remarks>
<param name="rows">An
integer specifying the number of rows of the new
Matrix
object.</param>
<param name="cols">An
integer specifying the number of columns of the new
Matrix
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor(System.Double[])">
<summary>Initializes a new instance of the
Matrix
class using the content of a two-dimensional array.</summary>
<param name="array">The array of type
double whose content will be used to initialize the elements of
the newly created
Matrix
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor(System.Double[],System.Int32,System.Int32)">
<summary> Initializes a new instance of the
Matrix class using the content of a two-dimensional array,
specifying the size of the created matrix.</summary>
<param name="array">The array of type
double whose content will be used to initialize the elements of
the newly created
Matrix
object.</param>
<param name="rows">An
integer specifying the number of rows of the new
Matrix
object.</param>
<param name="cols">An
integer specifying the number of columns of the new
Matrix
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor(System.Double[],System.Int32,System.Int32)">
<summary>Initializes a new instance of the
Matrix
class using the content of a one-dimensional array, specifying the
size of the created matrix.</summary>
<param name="array">The array of type
double whose content will be used to initialize the elements of
the newly created
Matrix
object.</param>
<param name="rows">An
integer specifying the number of rows of the new
Matrix
object.</param>
<param name="cols">An
integer specifying the number of columns of the new
Matrix
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor(System.Double[],System.Int32,System.Int32,Bluebit.MatrixLibrary.StorageOrder)">
<summary>Initializes a new instance of the
Matrix
class using the content of a one-dimensional array, specifying the
size of the created matrix, and the storage order.</summary>
<param name="array">The array of type
double whose content will be used to initialize the elements of
the newly created
Matrix
object.</param>
<param name="rows">An
integer specifying the number of rows of the new
Matrix
object.</param>
<param name="cols">An
integer specifying the number of columns of the new
Matrix
object.</param>
<param name="order">A
StorageOrder enumeration specifying the order in which the
array values will be used to initialize the matrix elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor(System.Int32,System.Int32)">
<summary>Initializes a new instance of the
Matrix
class specifying the number of rows and columns of the newly
created matrix.</summary>
<param name="rows">The number of rows of the new
Matrix
object.</param>
<param name="cols">The number of columns of the new
Matrix
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor(System.Int32,System.Int32,System.Double)">
<summary>Initializes a new instance of the
Matrix
class specifying the number of rows and columns of the newly
created matrix, initializing its diagonal elements to the specified
double value.</summary>
<param name="rows">The number of rows of the new
Matrix
object.</param>
<param name="cols">The number of columns of the new
Matrix
object.</param>
<param name="diagonal">The
double value that will be used to initialize the diagonal
elements of the matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor(Bluebit.MatrixLibrary.Matrix)">
<summary>Initializes a new instance of the
Matrix
class copying the content of an existing matrix.</summary>
<remarks>This is the copy constructor of the
Matrix
class.</remarks>
<param name="matrix">The
Matrix
object whose elements will by copied into the newly created
matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix._ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary> Initializes a new instance of the
Matrix class and uses the specified</summary>
<remarks>This constructor implements the</remarks>
<param name="info"/>
<param name="context">An instance of the</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Add(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Adds two matrices.</summary>
<returns>A
Matrix
object that represents the result of the addition.</returns>
<remarks>The Add method is an alias for the
Addition operator.</remarks>
<param name="matrix1">A
Matrix
instance on the left side of the addition operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ApplyFunction">
<summary>Returns a new
Matrix
object, whose elements are the result of applying the specified
double function to the elements of this matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ApplyFunction(Bluebit.MatrixLibrary.DoubleFunction1Dbl)">
<summary>Returns a new
Matrix
object, whose elements are the result of applying the specified
double function to the elements of this matrix.</summary>
<remarks> The elements of this matrix are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
Matrix object.</remarks>
<returns>A new
Matrix
object with the same size as this matrix, whose elements are the
results of applying the specified function to the elements
of this matrix.</returns>
<param name="function">A delegate to a function that takes one
double parameter and returns a
double.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ApplyFunction(Bluebit.MatrixLibrary.DoubleFunction1Dbl1Int,System.Int32)">
<summary>Returns a new
Matrix
object, whose elements are the result of applying the specified
double function to the elements of this matrix.</summary>
<remarks>The elements of this matrix are passed one by one as the
first parameter to the function that is represented by the
delegate; the value is passed to the second parameter. The
returned values from this function are used to initialize the
elements of the newly created
Matrix
object.</remarks>
<returns>A new
Matrix
object with the same size as this matrix, whose elements are the
results of applying the specified function to the elements
of this matrix.</returns>
<param name="function">A delegate to a function that takes as its first parameter a
double, as a second parameter an
integer and returns a
double.</param>
<param name="value">The
integer value that will be passed to the second parameter of
the function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ApplyFunction(Bluebit.MatrixLibrary.DoubleFunction1Dbl2Int)">
<summary>Returns a new
Matrix
object, whose elements are the result of applying the specified
double function to the elements of this matrix.</summary>
<returns>A new
Matrix
object with the same size as this matrix, whose elements are the
results of applying the specified function to the elements
of this matrix.</returns>
<remarks> The elements of this matrix are passed one by one as the
first parameter to the function that is represented by the
delegate.
The row and column
number of each element are passed to the second and third
parameter of the function respectively.
The returned values from this function are used to
initialize the elements of the newly created
Matrix object.</remarks>
<param name="function">A delegate to a function that takes as first parameter a
double, as a second and third parameter an
integer and returns a
double.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ApplyFunction(Bluebit.MatrixLibrary.DoubleFunction2Dbl,System.Double)">
<summary>Returns a new
Matrix
object, whose elements are the result of applying the specified
double function to the elements of this matrix.</summary>
<returns>A new
Matrix
object with the same size as this matrix, whose elements are the
results of applying the specified function to the elements
of this matrix.</returns>
<remarks> The elements of this matrix are passed one by one as the
first parameter to the function that is represented by the
delegate; the value2 is passed to the second
parameter. The returned values from this function are used to
initialize the elements of the newly created
Matrix object.</remarks>
<param name="function">A delegate to a function that takes as its first parameter a
double, as a second parameter an
integer and returns a
double.</param>
<param name="value2">The
double value that will be passed to the second parameter of the
function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ApplyFunction(Bluebit.MatrixLibrary.DoubleFunction2Dbl2Int,System.Double)">
<summary>Returns a new
Matrix
object, whose elements are the result of applying the specified
double function to the elements of this matrix.</summary>
<returns>A new
Matrix
object with the same size as this matrix, whose elements are the
results of applying the specified function to the elements
of this matrix.</returns>
<remarks> The elements of this matrix are passed one by one as the
first parameter to the function that is represented by the
delegate; the value2 is passed to the second
parameter. The returned values from this function are used to
initialize the elements of the newly created
Matrix object.</remarks>
<param name="function">A delegate to a function that takes as its first and second
parameter a
double, as its third and fourth parameter an
integer and returns a
double.</param>
<param name="value2">The
double value that will be passed to the second parameter of the
function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Clear">
<summary>Sets the value of all the
Matrix
elements to zero.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Clone">
<summary>Creates a duplicate of this
Matrix
object.</summary>
<returns>A new
Matrix
object that contains the same data as this.</returns>
<remarks>A deep copy is created. Each
Matrix
object references different data.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ColCorrelation(System.Int32,System.Int32)">
<summary>Returns the correlation coefficient between two columns of
the current matrix.</summary>
<returns>A
double that equals to the correlation coefficient between the
two columns.</returns>
<param name="col1">An
integer specifying the first column.</param>
<param name="col2">An
integer specifying the second column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ColCovariance(System.Int32,System.Int32)">
<summary>Returns the covariance between two columns of the current
matrix.</summary>
<returns>A
double that equals to the covariance between the two
columns.</returns>
<param name="col1">An
integer specifying the first column.</param>
<param name="col2">An
integer specifying the second column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ColsDotProduct(System.Int32,System.Int32)">
<summary>Returns the dot product between two columns of the
Matrix
object.</summary>
<returns>A
double that equals to the dot product between two columns of
the matrix.</returns>
<remarks>If the same value is used for the col1,
col2 parameters then the value returned is the sum of
squares of the specified column's elements.</remarks>
<param name="col1">An
integer specifying the first column.</param>
<param name="col2">An
integer specifying the first column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ColSum(System.Int32)">
<summary>Returns the sum of the elements of the specified
column.</summary>
<returns>A
double equal to the sum of the specified column.</returns>
<param name="colIndex">An
integer specifying the column to be summed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ColVector(System.Int32)">
<summary>Returns a new
Vector
object using the specified matrix column.</summary>
<returns>A new
Vector
object containing the elements of the specified column.</returns>
<remarks>A deep copy of the data is created. The
Vector
object references its own data.</remarks>
<param name="col">An
integer specifying the column to use.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.CorrelationMatrix">
<summary>Returns a matrix containing the correlation coefficients
between the columns of the current matrix.</summary>
<returns>A
Matrix
object having as elements the correlation coefficients between the
columns of the current matrix.</returns>
<remarks>The element (i, j) of the correlation matrix is the
correlation between column i and j. The correlation matrix is
symmetric and its diagonal elements are equal to 1.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.CovarianceMatrix">
<summary>Returns a matrix containing the covariances between the
columns of the current matrix.</summary>
<returns>A
Matrix
object having as elements the covariances between the columns of
the current matrix.</returns>
<remarks>The element (i, j) of the correlation matrix is the
covariance between column i and j. The covariance matrix is
symmetric.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Determinant">
<summary>Returns the value of the computed matrix determinant.</summary>
<remarks>Determinant can be calculated only for a square
matrix.</remarks>
<returns>A
double value that equals to the matrix determinant.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Diagonal">
<summary>Returns a
Vector
object containing the main diagonal of the current matrix.</summary>
<returns>A
Vector
object containing the elements of the main diagonal.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Divide">
<summary>Performs matrix right division.Performs matrix
division.</summary>
<returns>A
CMatrix
object that represents the result of the matrix right
division.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Divide(System.Double,Bluebit.MatrixLibrary.Matrix)">
<summary>Performs scalar-matrix division.</summary>
<returns>A
Matrix
object that represents the result of the scalar-matrix
division.</returns>
<param name="scalar">A
Double on the left side of the division operator.</param>
<param name="matrix">A
Matrix
instance on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Divide(Bluebit.MatrixLibrary.Matrix,System.Double)">
<summary>Performs matrix-scalar division.</summary>
<returns>A
Matrix
object that represents the result of the matrix-scalar
division.</returns>
<param name="matrix">A
Matrix
instance on the left side of the division operator.</param>
<param name="scalar">A
Double on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Divide(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Performs matrix right division</summary>
<remarks> The Divide method is an alias for the
Division operator.
X = B / A then X is the
solution of the equation XΓÇóA =
B.</remarks>
<returns>A
Matrix
object that represents the result of the matrix division.</returns>
<param name="matrix1">A
Matrix
instance on the left side of the division operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Equals(System.Object)">
<summary>Returns a value indicating whether this
Matrix
object is equal to another matrix.</summary>
<returns>true if obj is an instance of the
Matrix
class and represents a matrix that has the same size as this
instance and also all the elements of obj are equal to the
elements of this instance; false otherwise.</returns>
<remarks> The elements of this matrix and obj are compared with the
== operator end they must be exactly equal in order for this
method to return true.
If you need to test if elements of two matrices are equal
within a specified tolerance use the
IsEqual method.</remarks>
<param name="obj">An object to compare with this instance of the
Matrix
class.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.FillRandom">
<summary>Fills
Matrix
object with random values.</summary>
<remarks>Use FillRandom method in order to quickly
fill matrix with random values, while coding, testing and debugging
your application.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.FillRandom">
<summary>Fills
Matrix
object with random values ranging from 0 to 10, rounded to zero
decimal places.</summary>
<remarks>Use FillRandom method in order to quickly
fill the matrix with random values, while coding, testing and
debugging your application.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.FillRandom(System.Double,System.Double)">
<summary>Fills
Matrix
object with random values ranging from lower to upper bound,
rounded to 0 decimal places.</summary>
<remarks>Use FillRandom method in order to quickly
fill the matrix with random values, while coding, testing and
debugging your application.</remarks>
<param name="lowerBound">A
double specifying the lower limit of the random values that
will be used.</param>
<param name="upperBound">A
double specifying the upper limit of the random values that
will be used.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.FillRandom(System.Double,System.Double,System.Int32)">
<summary>Fills
Matrix
object with random values ranging from lower bound to upper bound,
rounded to the specified number of decimal places.</summary>
<remarks>Use FillRandom method in order to quickly
fill the matrix with random values, while coding, testing and
debugging your application.</remarks>
<param name="lowerBound">A
double specifying the lower limit of the random values that
will be used.</param>
<param name="upperBound">A
double specifying the upper limit of the random values that
will be used.</param>
<param name="decimals">An
integer specifying the number of decimal places to which random
values will be rounded to.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.GetHashCode">
<summary>Returns the hash code of the current
ShortParentItemName.</summary>
<returns>A 32-bit signed integer that represents the hash
code.</returns>
<remarks>This method overrides Object.GetHashcode and
generates the same hash code for two objects that are equal
according to the Equals method.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>Implements the
ISerializable interface and returns the data needed to
serialize the
Matrix
class.</summary>
<remarks>This method implements the ISerializable
interface.</remarks>
<param name="info">A
SerializationInfo object.</param>
<param name="context">A
StreamingContext structure.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.HasINFs">
<summary>Returns a value indicating whether the current matrix
contains any elements that evaluate to negative or
positive infinity..</summary>
<returns>true if any of the matrix elements evaluates
to negative or positive infinity;
otherwise false.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.HasNaNs">
<summary>Returns a value indicating whether the current matrix
contains any elements that evaluate to NaN
values.</summary>
<returns>true if any of the matrix elements evaluates
to a NaN value; otherwise
false.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Inverse">
<summary>Computes the inverse of the matrix and returns a reference to
it.</summary>
<returns>A
Matrix
object representing the inverse of the current matrix.</returns>
<remarks> Use Inverse method with error handling
to trap errors arising from the matrix being a singular
matrix.
An alternative method for computing the matrix inverse is
to use the
LU
object. The
LU
object can then be reused for further computations as solving
systems of linear equations.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.IsEqual">
<summary>Returns a value indicating whether this
Matrix
is equal to another matrix within a tolerance.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.IsEqual(Bluebit.MatrixLibrary.Matrix)">
<summary>Returns a value indicating whether this
Matrix
is equal to another matrix within a default tolerance.</summary>
<returns>true if matrix has the same size as
this instance and its elements are equal with the elements of this
instance within the default tolerance; otherwise
false.</returns>
<remarks>The default tolerance equals to the maximum absolute value of
matrix elements, multiplied by the double epsilon value
(2.2204460492503131e-016).</remarks>
<param name="matrix">A
Matrix
whose elements to compare with the elements of this
Matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.IsEqual(Bluebit.MatrixLibrary.Matrix,System.Double)">
<summary>Returns a value indicating whether this
Matrix
is equal to another matrix within the specified tolerance.</summary>
<returns>true if matrix has the same size as
this instance and its elements are equal with the elements of this
instance within the specified tolerance; otherwise
false.</returns>
<param name="matrix">A
Matrix
whose elements to compare with the elements of this
Matrix.</param>
<param name="tolerance">A
double specifying the tolerance.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.IsFinite">
<summary>Returns a value indicating whether the current matrix
contains any elements that evaluate either to NaN
value or to negative or positive
infinity.</summary>
<returns>true if all elements of the current matrix
have a value other NaN, negative
infinity, positive
infinity; otherwise false.</returns>
<remarks> Most of the internal routines expect that input matrices
or vectors do not contain any negative infinity, positive
infinity, or NaN values in order to perform
flawlessly.
If you suspect that the current matrix or vector may
contain any NaN or infinity
values, use the IsFinite method before any
further processing.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.IsSymmetric">
<summary>Returns a value indicating whether this matrix is
symmetric.</summary>
<returns>true if current matrix is found to be
symmetric; otherwise false.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.IsSymmetric">
<summary>Returns a value indicating whether this matrix is
symmetric.</summary>
<returns>true if current matrix is found to be
symmetric; otherwise false.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.IsSymmetric(System.Double)">
<summary>Returns a value indicating whether this matrix is symmetric
within the specified tolerance.</summary>
<returns>true if current matrix is found to be
symmetric; otherwise false.</returns>
<param name="tolerance">To tolerance to be used when comparing matrix
elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.LDivide(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Performs matrix left division.</summary>
<returns>A
Matrix
object that represents the result of the matrix left
division.</returns>
<remarks>Matrix.LDivide(matrix1, matrix2) is
equivalent to matrix1.Solve(matrix2)</remarks>
<param name="matrix1">A
Matrix
instance on the left side of division operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Multiply">
<summary>Multiplies matrices.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Multiply(System.Double,Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix,System.Double,Bluebit.MatrixLibrary.Matrix)">
<summary>Computes a scalar-matrix-matrix product and adds the result
to a scalar-matrix product.</summary>
<remarks> The operation performed by this method is defined
as:
D = alphaΓÇóAΓÇóB + betaΓÇóC</remarks>
<param name="alpha">A
double representing the scalar value of the
scalar-matrix-matrix product.</param>
<param name="A">A
Matrix
object representing the first matrix of the scalar-matrix-matrix
product.</param>
<param name="B">A
Matrix
object representing the second matrix of the scalar-matrix-matrix
product.</param>
<param name="beta">A
double representing the scalar value of the scalar-matrix
product.</param>
<param name="C">A
Matrix
object representing the matrix of the scalar-matrix product.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Multiply(Bluebit.MatrixLibrary.Matrix,System.Double)">
<summary>Returns the product of a scalar and a matrix.</summary>
<returns>A
Matrix
object that represents the matrix - scalar
product.</returns>
<param name="matrix">A
Matrix
object that represents the matrix to be multiplied.</param>
<param name="scalar">A
double value that represents the scalar..</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Multiply(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Multiplies two matrices.</summary>
<returns>A
Matrix
object that represents the result of the matrix
multiplication.</returns>
<remarks>The inner dimensions of the matrices being multiplied must
agree; matrix1 must have as many columns as
matrix2 has rows.</remarks>
<param name="matrix1">A
Matrix
instance on the left side of the multiplication operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Multiply(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Vector)">
<summary>Multiplies a real matrix with a real vector.</summary>
<returns>A
CMatrix
that represents the result of the matrix-vector
multiplication.</returns>
<remarks>The vector parameter is taken as a column
vector.</remarks>
<param name="matrix">A
CMatrix
object that represents the matrix to be multiplied.</param>
<param name="vector">A
CVector
object that represents the vector to multiply with.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Negate(Bluebit.MatrixLibrary.Matrix)">
<summary>Returns the negation of the matrix.</summary>
<returns>A
Matrix
object that represents the negate of the matrix.</returns>
<remarks>This method is an alias for the
unary negation operator.</remarks>
<param name="matrix">The matrix to negate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Norm(Bluebit.MatrixLibrary.NormType)">
<summary>Returns the matrix norm.</summary>
<returns>A
double value representing the specified norm.</returns>
<remarks> The following table lists all possible values for the
type parameter and the types of norm that can be
calculated.
Member
Description
FrobeniusNorm
Frobenius norm of the matrix (square
root of sum of squares).
InfinityNorm
Infinity norm of the matrix (maximum
row sum).
OneNorm
1-norm of the matrix (maximum column
sum).
MaxAbsValue
The element of largest absolute value
of the matrix.
</remarks>
<param name="type">A
NormType enumeration value that specifies the type of norm to
be returned.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.NormalizeCols(Bluebit.MatrixLibrary.NormalizeMode)">
<summary> Normalizes the columns of the current matrix according to
the specified mode.</summary>
<remarks> The following table lists the values of
NormalizeMode enumeration and their effect on column
normalization.
Member
Description
MaximumOne
Normalizes columns or rows so that
their biggest element is 1.
UnitLength
Normalizes columns or rows so that
they become unit length vectors (their sum of
squares is 1).
ZScores
Normalizes columns or rows to zscores
(values having zero mean and unit standard
deviation).
</remarks>
<param name="mode">A
NormalizeMode enumeration value indicating how the matrix
columns will be normalized.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.NormalizeRows(Bluebit.MatrixLibrary.NormalizeMode)">
<summary> Normalizes the rows of the current matrix according to
the specified mode.</summary>
<remarks> The following table lists the values of
NormalizeMode enumeration and their effect on row
normalization.
Member
Description
MaximumOne
Normalizes columns or rows so that
their biggest element is 1.
UnitLength
Normalizes columns or rows so that
they become unit length vectors (their sum of
squares is 1).
ZScores
Normalizes columns or rows to zscores
(values having zero mean and unit standard
deviation).
</remarks>
<param name="mode">A
NormalizeMode enumeration value indicating how the matrix rows
will be normalized.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Addition(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Adds two matrices.</summary>
<returns>A
Matrix
object that represents the result of the addition.</returns>
<remarks>The
Add method performs the same function as the addition operator
and can be used in languages that do not support overloaded
operators as Visual Basic.</remarks>
<param name="matrix1">A
Matrix
instance on the left side of the addition operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Division">
<summary>Performs matrix right division.Performs matrix
division.</summary>
<returns>A
CMatrix
object that represents the result of the matrix right
division.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Division(System.Double,Bluebit.MatrixLibrary.Matrix)">
<summary>Performs scalar-matrix division.</summary>
<returns>A
Matrix
object that represents the result of the scalar-matrix
division.</returns>
<param name="scalar">A
Double on the left side of the division operator.</param>
<param name="matrix">A
Matrix
instance on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Division(Bluebit.MatrixLibrary.Matrix,System.Double)">
<summary>Performs matrix-scalar division.</summary>
<returns>A
Matrix
object that represents the result of the matrix-scalar
division.</returns>
<param name="matrix">A
Matrix
instance on the left side of the division operator.</param>
<param name="scalar">A
Double on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Division(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Performs matrix right division</summary>
<remarks> X = B / A then X is the
solution of the equation XΓÇóA =
B.</remarks>
<returns>A
Matrix
object that represents the result of the matrix division.</returns>
<param name="matrix1">A
Matrix
instance on the left side of the division operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the division operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Equality(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Tests whether two
Matrix objects represent equal matrices.</summary>
<returns>true if matrices are equal; otherwise
false.</returns>
<remarks> The equality operator returns false if
matrices are not of the same size.
The elements of the compared matrices must be exactly
equal in order to the equality operator return
true. If you need to test if elements of two
matrices are equal within a specified tolerance use the
IsEqual method.</remarks>
<param name="matrix1">A
Matrix
instance on the left side of the equality operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the equality operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Implicit">
<summary>Defines conversions between
Matrix
objects and arrays of type
double.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Implicit(System.Double[])">
<summary>Converts a two-dimensional array of type
double to a
Matrix
object.</summary>
<returns>A
Matrix
object containing the same values as the array.</returns>
<param name="array">The two-dimensional array of type
double to convert.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Implicit(Bluebit.MatrixLibrary.Matrix)">
<summary>Converts a
Matrix
to a two-dimensional array of type
double.</summary>
<remarks>
ToArray method can be used in languages that do not support
operator overloading like Visual Basic.</remarks>
<returns>A two-dimensional array of type
double containing the same values as the
Matrix
object.</returns>
<param name="matrix">The
Matrix
object to convert.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Inequality(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Tests whether two
Matrix objects represent non equal matrices.</summary>
<returns>true if matrices are not equal; otherwise
false.</returns>
<param name="matrix1">A
Matrix
instance on the left side of the equality operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the equality operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Multiply">
<summary>Multiplies matrices.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Multiply(System.Double,Bluebit.MatrixLibrary.Matrix)">
<summary>Multiplies a scalar by a matrix.</summary>
<returns>A
Matrix
object that represents the product.</returns>
<remarks>The matrix-scalar multiplication is a commutative
operation.</remarks>
<param name="scalar">A
double representing a scalar on the left side of the
multiplication operator.</param>
<param name="matrix">A
Matrix
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Multiply(Bluebit.MatrixLibrary.Matrix,System.Double)">
<summary>Multiplies a matrix by a scalar.</summary>
<returns>A
Matrix
object that represents the product.</returns>
<remarks>The matrix-scalar multiplication is a commutative
operation.</remarks>
<param name="matrix">A
Matrix
instance on the left side of the multiplication operator.</param>
<param name="scalar">A
double representing a scalar on the right side of the
multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Multiply(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Multiplies two matrices.</summary>
<returns>A
Matrix
object that represents the product.</returns>
<remarks> The inner dimensions of the matrices being multiplied
must agree. That is, the number of columns in the first matrix
must be equal to the number of rows in the second
matrix.
Matrix multiplication is not commutative,
A" B is not the same as
B" A.</remarks>
<param name="matrix1">A
Matrix
instance on the left side of the multiplication operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Multiply(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Vector)">
<summary>Multiplies a matrix by a vector.</summary>
<returns>A
CMatrix
object that represents the product.</returns>
<remarks> The
CVector is considered to be a column vector; a one-column
matrix.
The vector size must be equal to the number of columns of
the matrix.</remarks>
<param name="matrix">A
CMatrix
instance on the left side of the multiplication operator.</param>
<param name="vector">A
CVector
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_Subtraction(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Subtracts two matrices.</summary>
<returns>A
Matrix
object that represents the result of the subtraction.</returns>
<remarks>The
Subtract method performs the same function as the addition
operator and can be used in languages that do not support
overloaded operators as Visual Basic.</remarks>
<param name="matrix1">A
Matrix
instance on the left side of the addition operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_UnaryNegation(Bluebit.MatrixLibrary.Matrix)">
<summary>Negates the matrix.</summary>
<returns>A
Matrix
object representing the negation of the matrix.</returns>
<remarks>The
Negate method performs the same function as the unary negation
operator and can be used in languages that do not support
overloaded operators as Visual Basic.</remarks>
<param name="matrix">A
Matrix
object representing the matrix to negate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.op_UnaryPlus(Bluebit.MatrixLibrary.Matrix)">
<summary>Returns the same matrix.</summary>
<returns>The same instance of the
Matrix
object .</returns>
<param name="matrix">A
Matrix
instance on the right side of the unary plus operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Plus(Bluebit.MatrixLibrary.Matrix)">
<summary>Adds a matrix with the current matrix.</summary>
<returns>A
Matrix
object that represents the result of adding matrix with
current matrix.</returns>
<param name="matrix">A
Matrix
object that represents the matrix to add with current
matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.PseudoInverse">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix.</summary>
<returns>A
Matrix
object representing the Moore-Penrose inverse (pseudoinverse) of
this matrix.A
Matrix
object representing the Moore-Penrose inverse (pseudoinverse) of
this matrix.</returns>
<remarks> If A+ is the Moore-Penrose inverse
(pseudoinverse) of matrix A then it satisfies
the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ =A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=A+ΓÇóA
</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.PseudoInverse">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix.</summary>
<returns>A
Matrix
object representing the Moore-Penrose inverse (pseudoinverse) of
this matrix.</returns>
<remarks> If A+ is the Moore-Penrose inverse
(pseudoinverse) of matrix A then it satisfies
the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ = A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=
A+ΓÇóA
</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.PseudoInverse(System.Double)">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix.</summary>
<remarks> Singular value decomposition is used for the calculation
of the pseudoinverse. Roundoff errors can lead to a singular
value not being exactly zero even if it should be.
tolerance parameter places a threshold when comparing
singular values with zero and improves the numerical stability
of the method with singular or near-singular matrices.
If A+ is the Moore-Penrose
inverse (pseudoinverse) of matrix A then it
satisfies the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ = A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=
A+ΓÇóA
</remarks>
<returns>A
Matrix
object representing the Moore-Penrose inverse (pseudoinverse) of
this matrix.</returns>
<param name="tolerance">A
double specifying the value under which the singular values of
the matrix are considered to be zero.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Rank">
<summary>Returns the matrix rank.</summary>
<remarks>The matrix rank is defined as the number of its nonzero
singular values.</remarks>
<returns>An
integer value representing the matrix rank.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ReorderCols(System.Int32[])">
<summary>Reorders matrix columns according to the specified
order.</summary>
<remarks> pivots[i] = k denotes that column
i should be moved to position k.</remarks>
<param name="pivots">An array of
integers containing the column dispositions.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ReorderRows(System.Int32[])">
<summary>Reorders matrix rows according to the specified order.</summary>
<remarks> pivots[i] = k denotes that row
i should be moved to position k.</remarks>
<param name="pivots">An array of
integers containing the row dispositions.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Resize(System.Int32,System.Int32)">
<summary>Resizes matrix preserving its content.</summary>
<remarks>If new dimensions are smaller the matrix is truncated; if
bigger then zeros are added.</remarks>
<param name="rows">An
integer specifying the new number of rows.</param>
<param name="cols">An
integer specifying the new number of columns.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.RowsDotProduct(System.Int32,System.Int32)">
<summary>Returns the dot product between two rows of the
Matrix
object.</summary>
<returns>A
double that equals to the dot product between two rows of the
matrix.</returns>
<remarks>If the same value is used for the row1,
row2 parameters then the value returned is the sum of
squares of the specified rows's elements.</remarks>
<param name="row1">An
integer specifying the first row.</param>
<param name="row2">An
integer specifying the second row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.RowSum(System.Int32)">
<summary>Returns the sum of the elements of the specified row.</summary>
<returns>A
double equal to the sum of the specified row.</returns>
<param name="rowIndex">An
integer specifying the row to be summed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.RowVector(System.Int32)">
<summary>Returns a new
Vector
object using the specified matrix row.</summary>
<returns>A new
Vector
object containing the elements of the specified row.</returns>
<remarks>A deep copy of the data is created. The
Vector
object references its own data.</remarks>
<param name="row">An
integer specifying the column to return as a
Vector
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SetColumn">
<summary>Sets the elements of a matrix column to specified
value(s).</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SetColumn(System.Int32,System.Double)">
<summary>Sets all elements of a matrix column to the specified
value.</summary>
<param name="col">An
integer specifying the column.</param>
<param name="value">A
Complex
that will be used to set all elements of the specified
column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SetColumn(System.Int32,System.Double,System.Double)">
<summary>Sets all elements of a matrix column to incremental
values.</summary>
<param name="col">An
integer specifying the column.</param>
<param name="start">A
Double specifying a value for the first element of the
column.</param>
<param name="step">A
Double to be added to each successive element of the
column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SetColumn(System.Int32,System.Double[])">
<summary>Sets all elements of a matrix column using the content on an
array.</summary>
<param name="col">An
integer specifying the column.</param>
<param name="values">An array of type
Double whose content will be used to set the elements of the
specified column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SetColumn(System.Int32,Bluebit.MatrixLibrary.Vector)">
<summary>Sets all elements of a matrix column using the contents on a
vector.</summary>
<param name="col">An
integer specifying the column.</param>
<param name="vector">A
Vector
whose content will be used to set the elements of the specified
column.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SetRow">
<summary>Sets the elements of a matrix column to specified
value(s).</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SetRow(System.Int32,System.Double)">
<summary>Sets all elements of a matrix row to the specified
value.</summary>
<param name="row">An
integer specifying the row.</param>
<param name="value">A
Complex
that will be used to set all elements of the specified row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SetRow(System.Int32,System.Double,System.Double)">
<summary>Sets all elements of a matrix row to incremental
values.</summary>
<param name="row">An
integer specifying the row.</param>
<param name="start">A
Double specifying a value for the first element of the
row.</param>
<param name="step">A
Double to be added to each successive element of the
row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SetRow(System.Int32,System.Double[])">
<summary>Sets all elements of a matrix row using the content on an
array.</summary>
<param name="row">An
integer specifying the row.</param>
<param name="values">An array of type
Double whose content will be used to set the elements of the
specified row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SetRow(System.Int32,Bluebit.MatrixLibrary.Vector)">
<summary>Sets all elements of a matrix row using the contents on a
vector.</summary>
<param name="row">An
integer specifying the row.</param>
<param name="vector">A
Vector
whose content will be used to set the elements of the specified
row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Solve(Bluebit.MatrixLibrary.Matrix)">
<summary>Solves a system of linear equations.</summary>
<returns>A
Matrix
object that contains the solution of the system of linear
equations.</returns>
<remarks> The Solve method finds the solution to
the system of linear equations
AΓÇóX = B
where:
A denotes the current matrix.
B denotes the matrix whose columns contain
the right hand terms (rightHands parameter).
X denotes the solution matrix that is to
be computed and will be returned be the method.
The system can be solved with multiple right-hand
sides stored in the columns of the matrix
B.
rightHands matrix must have the same number
of rows as current matrix.
If current matrix is a
mxn
matrix then the following operations are used:
If
m=n
then LU factorization is used to solve
the system. If matrix is found to be singular then
LQ factorization is used to solve it
as an underdetermined system.
If
m<n
then LQ factorization is used to
compute the minimum norm solution for the
underdetermined system.
If
m>n
then QR factorization is used to
compute a least squares solution for the overdetermined
system.
</remarks>
<param name="rightHands">A
Matrix
object containing the right-hand sides for the system of linear
equations.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SortCols">
<summary>Sorts the columns of the current matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SortCols">
<summary>Sorts the columns of the current matrix by the elements of
its first row in ascending order.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SortCols(System.Int32)">
<summary>Sorts the columns of the current matrix by the elements of
the specified row in ascending order.</summary>
<param name="row">An
integer specifying the row by which to sort the matrix
columns.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SortCols(System.Int32,Bluebit.MatrixLibrary.SortOrder)">
<summary>Sorts the columns of the current matrix by the elements of
the specified row in ascending or descending order.</summary>
<param name="row">An
integer specifying the row by which to sort the matrix
columns.</param>
<param name="order">A
SortOrder enumeration value specifying ascending or descending
order.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SortCols(System.Int32,Bluebit.MatrixLibrary.SortOrder,System.Int32[]@)">
<summary>Sorts the columns of the current matrix by the elements of
the specified row in ascending or descending order and returns the
columns' dispositions.</summary>
<remarks>pivots parameter can be used with
ReorderCols or
RecorderRows methods in order to synchronize other matrices
with this matrix after sorting.</remarks>
<param name="row">An
integer specifying the row by which to sort the matrix
columns.</param>
<param name="order">A
SortOrder enumeration value specifying ascending or descending
order.</param>
<param name="pivots">An array of
integer values that records the columns' dispositions.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SortRows">
<summary>Sorts the rows of the current matrix by the elements of its
first column in ascending order.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SortRows">
<summary>Sorts the rows of the current matrix by the elements of its
first column in ascending order.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SortRows(System.Int32)">
<summary>Sorts the rows of the current matrix by the elements of the
specified column in ascending order.</summary>
<param name="col">An
integer specifying the column by which to sort the matrix
row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SortRows(System.Int32,Bluebit.MatrixLibrary.SortOrder)">
<summary>Sorts the rows of the current matrix by the elements of the
specified column in ascending or descending order.</summary>
<param name="col">An
integer specifying the column by which to sort the matrix
row.</param>
<param name="order">A
SortOrder enumeration value specifying ascending or descending
order.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SortRows(System.Int32,Bluebit.MatrixLibrary.SortOrder,System.Int32[]@)">
<summary>Sorts the rows of the current matrix by the elements of the
specified column in ascending or descending order and returns the
rows' dispositions</summary>
<remarks>pivots parameter can be used with
ReorderCols or
RecorderRows methods in order to synchronize other matrices
with this matrix after sorting.</remarks>
<param name="col">An
integer specifying the column by which to sort the matrix
row.</param>
<param name="order">A
SortOrder enumeration value specifying ascending or descending
order.</param>
<param name="pivots">An array of
integer values that records the rows' dispositions.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SubMatrix(System.Int32,System.Int32,System.Int32,System.Int32)">
<summary>Returns a subset of the current matrix.</summary>
<returns>A
Matrix
instance that contains the subset of current matrix.</returns>
<remarks>If endRow is greater than startRow then the
returned matrix is flipped horizontally. The same way if
endCol is greater than startCol, then it is
flipped vertically.</remarks>
<param name="startRow">An
integer specifying the first row to include.</param>
<param name="endRow">An
integer specifying the last row to include.</param>
<param name="startCol">An
integer specifying the first column to include.</param>
<param name="endCol">An
integer specifying the last column to include.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Subtract(Bluebit.MatrixLibrary.Matrix,Bluebit.MatrixLibrary.Matrix)">
<summary>Subtracts a matrix from another matrix.</summary>
<returns>A
Matrix
object that represents the result of the subtraction.</returns>
<remarks>The Subtract method is an alias for the
subtraction operator.</remarks>
<param name="matrix1">A
Matrix
instance on the left side of the subtraction operator.</param>
<param name="matrix2">A
Matrix
instance on the right side of the subtraction operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SwapCols(System.Int32,System.Int32)">
<summary>Swaps two matrix columns.</summary>
<param name="col1">An
integer specifying the first column to swap.</param>
<param name="col2">An
integer specifying the second column to swap.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.SwapRows(System.Int32,System.Int32)">
<summary>Swaps two matrix rows.</summary>
<param name="row1">An
integer specifying the first row to swap.</param>
<param name="row2">An
integer specifying the second row to swap.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Times">
<summary>Multiplies the current matrix and returns the result.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Times(System.Double)">
<summary>Multiplies the current matrix by a scalar value and returns
the result.</summary>
<returns>A
Matrix
object that represents the result of the matrix-scalar
multiplication.</returns>
<param name="scalar">A
double by which to multiply the current matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Times(Bluebit.MatrixLibrary.Matrix)">
<summary> Multiplies the current matrix by another matrix and
returns the result.</summary>
<returns>A
Matrix
object that represents the result of the multiplication.</returns>
<remarks>The inner dimensions of the matrices being multiplied must
agree; matrix must have as rows as current matrix has
columns.</remarks>
<param name="matrix">A
Matrix
object by which to multiply the current matrix.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Times(Bluebit.MatrixLibrary.Vector)">
<summary>Multiplies the current matrix by a vector and returns the
result.</summary>
<returns>A
Matrix
that represents the result of the matrix-vector
multiplication.</returns>
<remarks>The vector parameter is taken as a column
vector.</remarks>
<param name="vector">A
Vector
object that represents the vector to multiply the current matrix
with.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ToArray">
<summary>Converts current matrix to an array.</summary>
<returns>An two-dimensional array of type
double containing the elements of the current matrix.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ToCMatrix">
<summary>Converts the current
Matrix
to a
CMatrix
object.</summary>
<returns>A
CMatrix
object that contains the same values as the current
Matrix.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ToString">
<summary>Converts this instance of
Matrix
to a formatted string.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<remarks>The "F3" format string is used to format each matrix element.
A space character is used as a separator of matrix elements. The
right and left borders are set to "| " and " |" strings
respectively. The new line character "\n" is added after each
matrix row.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ToString">
<summary>Converts this instance of
Matrix
to a formatted string using the default values for format string,
separator, left and right borders, and end of line
characters.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<remarks>The "F3" format string is used to format each matrix element.
A space character is used as a separator of matrix elements. The
right and left borders are set to "| " and " |" strings
respectively. The new line character "\n" is added after each
matrix row.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ToString(System.IFormatProvider,System.String)">
<summary>Converts this instance of
Matrix
to a formatted string specifying culture-specific format
information and a format string.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<param name="provider"> An
IFormatProvider that supplies culture-specific formatting
information.</param>
<param name="format">A format
string that will be used to convert all matrix elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ToString(System.IFormatProvider,System.String,System.String,System.String,System.String,System.String)">
<summary>Converts this instance of
Matrix
to a formatted string specifying culture-specific format
information, a format string, a separator, left and right borders
and end of line characters.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<param name="provider"> An
IFormatProvider that supplies culture-specific formatting
information.</param>
<param name="format">A format
string that will be used to convert all matrix elements.</param>
<param name="separator">A
string that will be used to separate matrix elements.</param>
<param name="leftBorder">A
string that will be added at the beginning of each matrix
row.</param>
<param name="rightBorder">A
string that will be added at the end of each matrix row.</param>
<param name="endMatrix">A
string that will be added at the end of each matrix row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ToString(System.String)">
<summary>Converts this instance of
Matrix
to a formatted string specifying a format string, and using the the
default values for separator, left and right borders, and end of
line characters.</summary>
<remarks>A space character is used as a separator of matrix elements.
The left and right borders are set to "| " and " |" strings
respectively. The new line character "\n" is added after each
matrix row.</remarks>
<returns>A formatted
string containing all matrix elements.</returns>
<param name="format">A format
string that will be used to convert all matrix elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ToString(System.String,System.String)">
<summary>Converts this instance of
Matrix
to a formatted string specifying a format string, and a separator
and using the default values for left and right borders and end of
line characters.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<remarks>The left and right borders are set to "| " and " |" strings
respectively. The new line character "\n" is added after each
matrix row.</remarks>
<param name="format">A format
string that will be used to convert all matrix elements.</param>
<param name="separator">A
string that will be used to separate matrix elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.ToString(System.String,System.String,System.String,System.String,System.String)">
<summary>Converts this instance of
Matrix
to a formatted string specifying a format string, a separator, left
and right borders and end of line characters.</summary>
<returns>A formatted
string containing all matrix elements.</returns>
<param name="format">A format
string that will be used to convert all matrix elements.</param>
<param name="separator">A
string that will be used to separate matrix elements.</param>
<param name="leftBorder">A
string that will be added at the beginning of each matrix
row.</param>
<param name="rightBorder">A
string that will be added at the end of each matrix row.</param>
<param name="endMatrix">A
string that will be added at the end of each matrix row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Trace">
<summary>Returns the sum of the elements of the main diagonal.</summary>
<returns>A
double value equal to matrix trace.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Matrix.Transpose">
<summary>Returns the transpose of the matrix.</summary>
<returns>A
Matrix
instance that represents the transpose of the current
matrix.</returns>
</member>
<member name="P:Bluebit.MatrixLibrary.Matrix.Cols">
<summary>Gets or sets the number of columns of the current
matrix.</summary>
<remarks>Setting the Cols property to a new value
causes the
Matrix
to resize. This has the same effect as calling the
Resize method.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.Matrix.Data">
<summary>This property is used while serializing and deserializing the
Matrix
object and is not intended to be used directly from your
code.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Matrix.DataPtr">
<summary>Gets the address of the unmanaged (native) memory block
containing the matrix's elements.</summary>
<remarks>Matrix elements are stored in column major order. For a 3x2
matrix its items will be stored in the following order: [0,0],
[1,0], [2,0], [0,1], [1,1], [2,1] .</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.Matrix.IsSquare">
<summary>Indicates whether this instance represents a square
matrix.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Matrix.Item(System.Int32,System.Int32)">
<summary>Gets or sets a single matrix element.</summary>
<remarks>This is the default property of the
Matrix
object when using it in Visual Basic. It is the indexer of the
Matrix
object when used in C#.</remarks>
<param name="row">Specifies the row of the matrix element to get or to
set.</param>
<param name="col">Specifies the column of the matrix element to get or to
set.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.Matrix.Rows">
<summary>Gets or sets the number of rows of the current matrix.</summary>
<remarks>Setting the Rows property to a new value
causes the
Matrix
to resize. This has the same effect as calling the
Resize method.</remarks>
</member>
<member name="T:Bluebit.MatrixLibrary.MatrixException">
<summary>This is the base class for all exceptions thrown from the
Bluebit.MatrixLibrary namespace.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.MatrixException._ctor">
<summary>Creates a new instance of the
MatrixException class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.MatrixException._ctor">
<summary>Constructs an empty
MatrixException instance.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.MatrixException._ctor(System.String)">
<summary>Constructs a new instance of the
MatrixException class with the specified error message.</summary>
<param name="message">A
string containing the message describing the error.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.MatrixException._ctor(System.String,System.Exception)">
<summary>Constructs a new instance of the
MatrixException class with the specified error message and the
underlying (inner) exception.</summary>
<param name="message">A
string containing the message describing the error.</param>
<param name="innerException">The inner
Exception object.</param>
</member>
<member name="T:Bluebit.MatrixLibrary.NotEnoughMemoryException">
<summary>Thrown when there is not enough memory to complete an
operation.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.NotEnoughMemoryException._ctor">
<summary>Creates a new instance of the
NotEnoughMemoryException class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.NotEnoughMemoryException._ctor">
<summary>Constructs an empty
NotEnoughMemoryException instance.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.NotEnoughMemoryException._ctor(System.String)">
<summary>Constructs a new instance of the
NotEnoughMemoryException class with the specified error
message.</summary>
<param name="message">A
string containing the message describing the error.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.NotEnoughMemoryException._ctor(System.String,System.Exception)">
<summary>Constructs a new instance of the
NotEnoughMemoryException class with the specified error message
and the underlying (inner) exception.</summary>
<param name="message">A
string containing the message describing the error.</param>
<param name="innerException">The inner
Exception object.</param>
</member>
<member name="T:Bluebit.MatrixLibrary.NotSquareMatrixException">
<summary>Thrown when a non-square matrix is passed as a parameter to a
method that expects a square matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.NotSquareMatrixException._ctor">
<summary>Creates a new instance of the
NotSquareMatrixException class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.NotSquareMatrixException._ctor">
<summary>Creates a new instance of the
NotSquareMatrixException class with the default message.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.NotSquareMatrixException._ctor(System.String)">
<summary>Creates a new instance of the
NotSquareMatrixException class with the specified
message.</summary>
<param name="message">A
string containing the message describing the error.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.NotSquareMatrixException._ctor(System.String,System.Exception)">
<summary>Creates a new instance of the
NotSquareMatrixException class with the specified message and
the underlying (inner) exception.</summary>
<param name="message">A
string containing the message describing the error.</param>
<param name="innerException">The inner
Exception object.</param>
</member>
<member name="T:Bluebit.MatrixLibrary.OperationFailedException">
<summary>Thrown when a method fails to complete.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.OperationFailedException._ctor">
<summary>Creates a new instance of the
InvalidSizeException class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.OperationFailedException._ctor">
<summary>Creates a new instance of the
InvalidSizeException class with the default message.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.OperationFailedException._ctor(System.String)">
<summary>Creates a new instance of the
InvalidSizeException class with the specified message.</summary>
<param name="message">A
string containing the message describing the error.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.OperationFailedException._ctor(System.String,System.Exception)">
<summary>Constructs a new instance of the
OperationFailedException class with the specified error message
and the underlying (inner) exception.</summary>
<param name="message">A
string containing the message describing the error.</param>
<param name="innerException">The inner
Exception object.</param>
</member>
<member name="T:Bluebit.MatrixLibrary.QR">
<summary>Represents a QR factorization of a general
real matrix.</summary>
<remarks> The QR factorization of a general m
by n matrix A is formed as
AΓÇóP =
QΓÇóR where P
is a permutation matrix, Q is a
mxn (mxm if
m<n) orthogonal matrix and
R is a nxn (mxn if
m<n) upper triangular (upper trapezoidal
if m<n) matrix.
The
QR
class can be used for solving least-square problems.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.QR._ctor">
<summary>Initializes a new instance of the
QR
class computing the QR factorization of a general
real matrix.</summary>
<remarks>The
QR
class constructor never fails.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.QR._ctor(Bluebit.MatrixLibrary.Matrix)">
<summary>Initializes a new instance of the
QR
class computing the QR factorization of a real
complex matrix using column pivoting.</summary>
<remarks>The
QR
class constructor never fails.</remarks>
<param name="matrix">A
Matrix
object containing the matrix to factor.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.QR._ctor(Bluebit.MatrixLibrary.Matrix,System.Boolean)">
<summary>Initializes a new instance of the
QR
class computing the QR factorization of a general
real matrix, specifying whether column pivoting will be
used.</summary>
<remarks>The
QR
class constructor never fails.</remarks>
<param name="matrix">A
Matrix
object containing the matrix to factor.</param>
<param name="pivoting">A boolean value specifying whether column pivoting will be
used.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.QR.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.QR.GetPivots">
<summary>Gets an array of integers containing the pivot
indices.</summary>
<remarks> Pivots(i) = k denotes that during factorization column k
has moved to column i.
The array that is returned from Pivots
property can be used as a parameter in
ReorderCols method in order to reconstruct the original
matrix.
This has the same effect as multiplying by the
P matrix but it executes faster.</remarks>
<returns>An array of type
Integer.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.QR.Solve(Bluebit.MatrixLibrary.Matrix)">
<summary>Solves a set of least-squares problems (with multiple right
hands) using the QR factorization of a general
real matrix.</summary>
<returns>A
Matrix
object that contains the solution of the least-squares
problems.</returns>
<remarks> The Solve method finds a least-squares
solution to the system of linear equations
AΓÇóX = B
where:
A denotes the complex matrix that has
been previously factored (represented now by its
QR factorization).
B is the matrix whose columns contain
the right hand terms.
X is the solution matrix that is to be
computed and minimizes ||AΓÇóX
-B||2
The system can be solved with multiple right-hand sides
stored in the columns of the matrix B. The
columns of X are the minimum norm solution
vectors.</remarks>
<param name="rightHands">A
Matrix
object containing the right-hand sides for the set of least-squares
problems.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.QR.Cols">
<summary>Gets the number of columns of the matrix that is represented
by the factorization.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.QR.P">
<summary>Gets the P factor, the permutation matrix of
the QR factorization.</summary>
<remarks>The QR factorization of a general m
by n matrix A is formed as
AΓÇóP =
QΓÇóR where P is a
permutation matrix, Q is a mxn
(mxm if m<n) orthogonal
matrix and R is a nxn
(mxn if m<n) upper triangular
(upper trapezoidal if m<n) matrix.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.QR.Q">
<summary>Gets the Q factor, the orthogonal part of
the QR factorization.</summary>
<remarks>The QR factorization of a general m
by n matrix A is formed as
AΓÇóP =
QΓÇóR where P is a
permutation matrix, Q is a mxn
(mxm if m<n) orthogonal
matrix and R is a nxn
(mxn if m<n) upper triangular
(upper trapezoidal if m<n) matrix.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.QR.R">
<summary>Gets the R factor, the upper triangular part
of the QR factorization.</summary>
<remarks>The QR factorization of a general m
by n matrix A is formed as
AΓÇóP =
QΓÇóR where P is a
permutation matrix, Q is a mxn
(mxm if m<n) orthogonal
matrix and R is a nxn
(mxn if m<n) upper triangular
(upper trapezoidal if m<n) matrix.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.QR.Rows">
<summary>Gets the number of rows of the matrix that is represented by
the factorization.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.SingularMatrixException">
<summary>Thrown when a matrix has found to be singular not allowing
the successful completion of a method.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.SingularMatrixException._ctor">
<summary>Creates a new instance of the
SingularMatrixException class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.SingularMatrixException._ctor">
<summary>Creates a new instance of the
SingularMatrixException class with the default message.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.SingularMatrixException._ctor(System.String)">
<summary>Creates a new instance of the
SingularMatrixException class with the specified
message.</summary>
<param name="message">A
string containing the message describing the error.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.SingularMatrixException._ctor(System.String,System.Exception)">
<summary>Constructs a new instance of the
SingularMatrixException class with the specified error message
and the underlying (inner) exception.</summary>
<param name="message">A
string containing the message describing the error.</param>
<param name="innerException">The inner
Exception object.</param>
</member>
<member name="T:Bluebit.MatrixLibrary.SizeMismatchException">
<summary>Thrown when a method expects a matrix of different
size.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.SizeMismatchException._ctor">
<summary>Creates a new instance of the
SizeMismatchException class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.SizeMismatchException._ctor">
<summary>Creates a new instance of the
SizeMismatchException class with the default message.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.SizeMismatchException._ctor(System.String)">
<summary>Creates a new instance of the
SizeMismatchException class with the specified message.</summary>
<param name="message">A
string containing the message describing the error.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.SizeMismatchException._ctor(System.String,System.Exception)">
<summary>Constructs a new instance of the
SizeMismatchException class with the specified error message
and the underlying (inner) exception.</summary>
<param name="message">A
string containing the message describing the error.</param>
<param name="innerException">The inner
Exception object.</param>
</member>
<member name="T:Bluebit.MatrixLibrary.SVD">
<summary>Represents the Singular Value Decomposition
(SVD) of a general complex matrix.</summary>
<remarks> The Singular Value Decomposition
(SVD) of a mxn matrix
A is written A =
U•Σ•VH
where Σ is an nxn
(mxn if m<n) matrix
which is zero except for its min(m,n)
diagonal elements, U is an
mxn (mxm if
m<n) orthogonal/unitary matrix, and
V is an nxn
orthogonal/unitary matrix.
The diagonal elements of Σ are the
singular values of A; they are real and
non-negative, and are returned in descending order.
The first min(m,n) columns of
U and V are the left and
right singular vectors of A.
</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.SVD._ctor">
<summary>Initializes a new instance of the
SVD
class.</summary>
<remarks>The
CSVD
constructor never fails.
Succeeded property indicates whether the internal routines have
managed to calculate all the singular values of the matrix.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.SVD._ctor(Bluebit.MatrixLibrary.Matrix)">
<summary>Initializes a new instance of the
SVD
class computing the Singular Value Decomposition
(SVD) of a general complex matrix.</summary>
<remarks>The
SVD
constructor never fails.
Succeeded property indicates whether the internal routines have
managed to calculate all the singular values of the matrix.</remarks>
<param name="matrix">A
Matrix
object containing the matrix whose Singular Value
Decomposition will be computed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.SVD._ctor(Bluebit.MatrixLibrary.Matrix,System.Boolean)">
<summary>Initializes a new instance of the
SVD
class computing the Singular Value Decomposition
of a general complex matrix, specifying whether the singular
vectors (U and V matrices) will
be computed.</summary>
<remarks>The
SVD
constructor never fails.
Succeeded property indicates whether the internal routines have
managed to calculate all the singular values of the matrix.</remarks>
<param name="matrix">A
Matrix
object containing the matrix whose Singular Value
Decomposition will be computed.</param>
<param name="singularValuesOnly">If true then only singular values are
computed; if false then both singular values and
singular vectors (U and V matrices) are calculated.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.SVD.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.SVD.PseudoInverse">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix that is represented by this singular value
decomposition.</summary>
<remarks> If A+ is the Moore-Penrose
inverse (pseudoinverse) of matrix A then it
satisfies the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ =A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=A+ΓÇóA
</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.SVD.PseudoInverse">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix that is represented by this singular value
decomposition.</summary>
<remarks> If A+ is the Moore-Penrose
inverse (pseudoinverse) of matrix A then it
satisfies the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ =A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=A+ΓÇóA
</remarks>
<returns>A
Matrix
object representing the Moore-Penrose inverse of the factored
matrix.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.SVD.PseudoInverse(System.Double)">
<summary>Returns the Moore-Penrose inverse (pseudoinverse) of the
matrix that is represented by this singular value
decomposition.</summary>
<remarks> Roundoff errors can lead to a singular value not being
exactly zero even if it should be. tolerance parameter
places a threshold when comparing singular values with zero and
improves the numerical stability of the method with singular or
near-singular matrices.
If A+ is the Moore-Penrose
inverse (pseudoinverse) of matrix A then it
satisfies the following four conditions:
AΓÇóA+ΓÇóA
= A
A+ΓÇóAΓÇóA
+ =A+
(AΓÇóA+)T
= AΓÇóA+
(A+ΓÇóA)T
=A+ΓÇóA
</remarks>
<returns>A
Matrix
object representing the Moore-Penrose inverse of the factored
matrix.</returns>
<param name="tolerance">A
double specifying the value under which the singular values of
the matrix are considered to be zero.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.SVD.Rank">
<summary>Returns the matrix rank.
Returns the matrix rank.</summary>
<remarks>The matrix rank is defined as the number nonzero singular
values.The matrix rank is defined as the number nonzero singular
values.</remarks>
<returns>An
integer value representing the matrix rank.An
integer value representing the matrix rank.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.SVD.Rank">
<summary>Returns the matrix rank.</summary>
<returns>An
integer value representing the matrix rank.</returns>
<remarks>The matrix rank is defined as the number of its nonzero
singular values.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.SVD.Rank(System.Double)">
<summary>Returns the matrix rank.</summary>
<remarks>The matrix rank is defined as the number of its nonzero
singular values.</remarks>
<returns>An
integer value representing the matrix rank.</returns>
<param name="tolerance">A
double specifying the value under which the singular values of
the matrix are considered to be zero.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.SVD.S">
<summary>Returns the Σ part of the singular value
decomposition.</summary>
<remarks> The Singular Value Decomposition
(SVD) of a mxn matrix
A is written A =
U•Σ•VH
where Σ is an nxn
(mxn if m<n) matrix
which is zero except for its min(m,n)
diagonal elements, U is an
mxn (mxm if
m<n) orthogonal/unitary matrix, and
V is an nxn
orthogonal/unitary matrix.
The diagonal elements of Σ are the
singular values of A; they are real and
non-negative, and are returned in descending order.
The first min(m,n) columns of
U and V are the left and
right singular vectors of A.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.SVD.SingularValue(System.Int32)">
<summary>Gets the specified singular value.</summary>
<param name="index">A zero-based index specifying the singular value to
return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.SVD.SingularValues">
<summary>Gets a vector containing all the computed singular
values.</summary>
<remarks>The singular values are ordered in descending order.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.SVD.Succeeded">
<summary>Indicates whether the all singular values were calculated
successfully.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.SVD.U">
<summary>Returns the U part of the singular value
decomposition.</summary>
<remarks> The Singular Value Decomposition
(SVD) of a mxn matrix
A is written A =
U•Σ•VH
where Σ is an nxn
(mxn if m<n) matrix
which is zero except for its min(m,n)
diagonal elements, U is an
mxn (mxm if
m<n) orthogonal/unitary matrix, and
V is an nxn
orthogonal/unitary matrix.
The diagonal elements of Σ are the
singular values of A; they are real and
non-negative, and are returned in descending order.
The first min(m,n) columns of
U and V are the left and
right singular vectors of A.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.SVD.V">
<summary>Returns the V part of the singular value
decomposition.</summary>
<remarks> The Singular Value Decomposition
(SVD) of a mxn matrix
A is written A =
U•Σ•VH
where Σ is an nxn
(mxn if m<n) matrix
which is zero except for its min(m,n)
diagonal elements, U is an
mxn (mxm if
m<n) orthogonal/unitary matrix, and
V is an nxn
orthogonal/unitary matrix.
The diagonal elements of Σ are the
singular values of A; they are real and
non-negative, and are returned in descending order.
The first min(m,n) columns of
U and V are the left and
right singular vectors of A.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.SVD.VH">
<summary>Returns the transpose of the V part of the
singular value decomposition.</summary>
<remarks> The Singular Value Decomposition
(SVD) of a mxn matrix
A is written A =
U•Σ•VH
where Σ is an nxn
(mxn if m<n) matrix
which is zero except for its min(m,n)
diagonal elements, U is an
mxn (mxm if
m<n) orthogonal/unitary matrix, and
V is an nxn
orthogonal/unitary matrix.
The diagonal elements of Σ are the
singular values of A; they are real and
non-negative, and are returned in descending order.
The first min(m,n) columns of
U and V are the left and
right singular vectors of A.</remarks>
</member>
<member name="T:Bluebit.MatrixLibrary.SymEigen">
<summary>The
SymEigen class is used to compute the
eigenvalues and optionally the
eigenvectors of a real symmetric matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.SymEigen._ctor">
<summary>Initializes a new instance of the
SymEigen class computing the eigen decomposition of a real
symmetric matrix.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.SymEigen._ctor(Bluebit.MatrixLibrary.Matrix)">
<summary>Initializes a new instance of the
SymEigen class computing the eigenvalues and the eigenvectors
of a real symmetric matrix.</summary>
<remarks>No check is made if matrix is actually symmetric and
only its lower triangular part is used in calculations.</remarks>
<param name="matrix">A
Matrix
object representing the real symmetric matrix whose eigenvalues and
right eigenvectors are to be computed.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.SymEigen._ctor(Bluebit.MatrixLibrary.Matrix,System.Boolean)">
<summary>Initializes a new instance of the
SymEigen class computing the eigenvalues and optionally the
eigenvectors of a real symmetric matrix.</summary>
<remarks>No check is made if matrix is actually symmetric and
only its lower triangular part is used in calculations.</remarks>
<param name="matrix">A
Matrix
object representing the real symmetric matrix whose eigenvalues and
right eigenvectors are to be computed. computed.</param>
<param name="eigenvectors">A
boolean value specifying whether eigenvectors will be
calculated.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.SymEigen.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.SymEigen.D">
<summary>Gets a real diagonal matrix, containing all the computed
eigenvalues in its main diagonal.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.SymEigen.Eigenvalue(System.Int32)">
<summary>Gets the specified eigenvalue.</summary>
<param name="index">A zero-based index specifying the eigenvalue to
return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.SymEigen.Eigenvalues">
<summary>Returns a vector containing all the computed
eigenvalues.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.SymEigen.Eigenvector(System.Int32)">
<summary>Gets the specified eigenvector.</summary>
<remarks>If the eigenvectors parameter of the
SymEigen class constructor is set to false,
the eigenvectors are not calculated and
Eigenvector property returns a
null reference (Nothing in Visual
Basic).</remarks>
<param name="index">An index specifying the eigenvector to return.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.SymEigen.Eigenvectors">
<summary>Gets the eigenvectors matrix.</summary>
<remarks>If the eigenvectors parameter of the
SymEigen class constructor is set to false,
the eigenvectors are not calculated and
Eigenvectors property returns a
null reference (Nothing in Visual
Basic).</remarks>
</member>
<member name="P:Bluebit.MatrixLibrary.SymEigen.Size">
<summary>Gets the size of matrix that is represented by this eigen
decomposition.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.SymEigen.Succeded">
<summary>Indicates whether the eigenvalues-eigenvectors calculation
succeeded to complete.</summary>
</member>
<member name="T:Bluebit.MatrixLibrary.Vector">
<summary>Represents a vector having as elements
double floating point numbers.</summary>
<remarks>Vector class is used as to represent a real
vector. Its methods can be used to perform vector operations and
data manipulation.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector._ctor">
<summary>Initializes a new instance of the
Vector
class.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector._ctor">
<summary>Initializes a new instance of the
Vector
class creating a vector of length equal to 3.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector._ctor(System.Double[])">
<summary>Initializes a new instance of the
Vector
class using the content of an array.</summary>
<param name="array">The array of
complex
structures whose content will be used to initialize the elements of
the newly created
Vector
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector._ctor(System.Int32)">
<summary>Creates a new instance of the
Vector
class specifying its length.</summary>
<param name="size">The length of the newly created vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector._ctor(System.Int32,System.Double)">
<summary>Creates a new instance of the
Vector
class specifying its length and a value to initialize its
components.</summary>
<param name="size">An
integer value specifying the length of the newly created
vector.</param>
<param name="value">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
that will be used to initialize vector elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector._ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>Initializes a new instance of the
Vector
class and uses the specified</summary>
<remarks>This constructor implements the</remarks>
<param name="info">A</param>
<param name="context">An instance of the</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector._ctor(Bluebit.MatrixLibrary.Vector)">
<summary>Creates a new instance of the
Vector
class, copying the content of an existing vector.</summary>
<remarks>This is the copy constructor of the
Vector
class.</remarks>
<param name="vector">The
Vector
object whose elements will by copied into the newly created
vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.AbsSum">
<summary>Returns the sum of magnitudes of the vector elements.</summary>
<returns>A
double value equal to the sum of magnitudes of the vector
elements.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Add">
<summary>Adds vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Add(Bluebit.MatrixLibrary.Vector,System.Double)">
<summary>Adds a vector with a scalar.</summary>
<returns>A
Vector
object representing the result of the addition.</returns>
<param name="vector">A
Vector
instance representing the vector to add with the scalar.</param>
<param name="scalar">A
double value representing the scalar to add with the
vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Add(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Adds two vectors.</summary>
<returns>A
Vector
object that represents the result of the addition.</returns>
<param name="vector1">A
Vector
instance on the left side of the addition operator.</param>
<param name="vector2">A
Vector
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ApplyFunction">
<summary>Returns a new
Vector
object, whose elements are the result of applying the specified
double function to the elements of this vector.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ApplyFunction(Bluebit.MatrixLibrary.DoubleFunction1Dbl)">
<summary>Returns a new
Vector
object, whose elements are the result of applying the specified
double function to the element of this vector.</summary>
<returns>A new
Vector
object with the same length as this vector, whose elements are the
results of applying the specified function to the elements
of this vector.</returns>
<remarks>The elements of this vector are passed one by one as
parameters to the function that is represented by the delegate. The
returned values from this function are used to initialize the
elements of the newly created
Vector
object.</remarks>
<param name="function">A delegate to a function that takes one
double parameter and returns a
double.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ApplyFunction(Bluebit.MatrixLibrary.DoubleFunction1Dbl1Int,System.Int32)">
<summary>Returns a new
Vector
object, whose elements are the result of applying the specified
double function to the element of this vector.</summary>
<remarks> The elements of this vector are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
Vector object.</remarks>
<returns>A new
Vector
object with the same length as this vector, whose elements are the
results of applying the specified function to the elements
of this vector.</returns>
<param name="function">A delegate to a function that takes as its first parameter a
double, as a second parameter an
integer and returns a
double.</param>
<param name="value">The
integer value that will be passed to the second parameter of
the function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ApplyFunction(Bluebit.MatrixLibrary.DoubleFunction1Dbl2Int,System.Int32)">
<summary>Returns a new
Vector
object, whose elements are the result of applying the specified
double function to the element of this vector.</summary>
<returns> A new
Vector object with the same length as this vector, whose
elements are the results of applying the specified
function to the elements of this vector.</returns>
<remarks> The elements of this vector are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
Vector object.
The index of the vector element is
passed as the third parameter of the
function represented by the delegate.
</remarks>
<param name="function">A delegate to a function that takes as its first parameter a
double, as a second and third parameter an
integer and returns a
double.</param>
<param name="value">The
integer value that will be passed to the second parameter of
the function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ApplyFunction(Bluebit.MatrixLibrary.DoubleFunction2Dbl,System.Double)">
<summary>Returns a new
Vector
object, whose elements are the result of applying the specified
double function to the element of this vector.</summary>
<returns>A new
Vector
object with the same length as this vector, whose elements are the
results of applying the specified function to the elements
of this vector.</returns>
<remarks> The elements of this vector are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
Vector object.</remarks>
<param name="function">A delegate to a function that takes as its first and second
parameter a
double and returns a
double.</param>
<param name="value">The
double value that will be passed to the second parameter of the
function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ApplyFunction(Bluebit.MatrixLibrary.DoubleFunction2Dbl2Int,System.Double,System.Int32)">
<summary>Returns a new
Vector
object, whose elements are the result of applying the specified
double function to the element of this vector.</summary>
<returns>A new
Vector
object with the same length as this vector, whose elements are the
results of applying the specified function to the elements
of this vector.</returns>
<remarks> The elements of this vector are passed one by one as
parameters to the function that is represented by the delegate.
The returned values from this function are used to initialize
the elements of the newly created
Vector object.
The index of the vector element is
passed as the forth parameter of the
function represented by the delegate.
</remarks>
<param name="function">A delegate to a function that takes as its first and second
parameter a
double, as its third and forth parameter an
integer, and returns a
double.</param>
<param name="value1">A
double value that will be passed to the second parameter of the
function represented by the delegate.</param>
<param name="value2">An
integer value that will be passed to the third parameter of the
function represented by the delegate.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Clear">
<summary>Sets the value of all the
CVector
elements to zero.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Clone">
<summary>Creates a duplicate of this
Vector
object.</summary>
<remarks>A deep copy is created. Each
Vector
object references different data.</remarks>
<returns>A new
Vector
object that contains the same data as this.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Dispose">
<summary>Releases all the resources used by the
ShortParentItemName object.</summary>
<remarks>Calling Dispose allows the resources used by this
object to be reallocated for other purposes.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Divide">
<summary>Divides real vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Divide(System.Double,Bluebit.MatrixLibrary.Vector)">
<summary>Divides a scalar by a real vector.</summary>
<returns>A
Vector
object representing the result of the scalar-vector
division.</returns>
<param name="scalar">A
double representing the scalar on the left of the division
operator.</param>
<param name="vector">A
Vector
object representing the vector on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Divide(Bluebit.MatrixLibrary.Vector,System.Double)">
<summary>Divides a real vector by a scalar.</summary>
<returns>A
Vector
object representing the result of the vector-scalar
division.</returns>
<param name="vector">A
Vector
object representing the vector on the left of the division
operator.</param>
<param name="scalar">A
double representing the scalar on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Divide(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Divides two real vectors.</summary>
<returns>A
Vector
object representing the result of the vector-vector
division.</returns>
<param name="vector1">A
Vector
object representing the vector on the left of the division
operator.</param>
<param name="vector2">A
Vector
object representing the vector on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.DotProduct">
<summary>Returns the dot product of vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.DotProduct(Bluebit.MatrixLibrary.Vector)">
<summary>Returns the dot product of this vector with another
vector.</summary>
<returns>A
double representing the dot product of this vector with the
specified vector.</returns>
<param name="vector">A
Vector
object.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.DotProduct(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Returns the dot product of two complex vectors.</summary>
<returns>A
double representing the dot product of the two vectors.</returns>
<param name="vector1">A
Vector
object representing the first complex vector.</param>
<param name="vector2">A
Vector
object representing the second complex vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Equals(System.Object)">
<summary>Returns a value indicating whether this
Vector
object is equal to another vector.</summary>
<returns>true if obj is an instance of the
Vector
class and represents a vector that has the same length as this
instance and also all the elements of obj are equal to the
elements of this instance; false otherwise.</returns>
<param name="obj">An object to compare with this instance of the
Vector
class.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.FillRandom">
<summary>Fills the
Vector
object with random values ranging from 0 to 10, rounded to zero
decimal places.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.FillRandom">
<summary>Fills the
Vector
object with random values ranging from 0 to 10, rounded to zero
decimal places.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.FillRandom(System.Double,System.Double)">
<summary>Fills the
Vector
object with random values ranging from lower to upper bound,
rounded to 0 decimal places.</summary>
<remarks>Use FillRandom method in order to quickly
fill the vector with random values, while coding, testing and
debugging your application.</remarks>
<param name="lowerBound">A
href="ms-help://MS.NETFrameworkSDK/cpref/html/frlrfSystemDoubleClassTopic.htm">double
specifying the lower limit of the random values that will be
used.</param>
<param name="upperBound">A
href="ms-help://MS.NETFrameworkSDK/cpref/html/frlrfSystemDoubleClassTopic.htm">double
specifying the upper limit of the random values that will be
used.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.FillRandom(System.Double,System.Double,System.Int32)">
<summary>Fills the
Vector
object with random values ranging from lower bound to upper bound,
rounded to the specified number of decimal places.</summary>
<remarks>Use FillRandom method in order to quickly
fill the vector with random values, while coding, testing and
debugging your application.</remarks>
<param name="lowerBound">A
double specifying the lower limit of the random values that
will be used.</param>
<param name="upperBound">A
double specifying the upper limit of the random values that
will be used.</param>
<param name="decimals">An
integer specifying the number of decimal places to which random
values will be rounded to.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.GetHashCode">
<summary>Returns the hash code of the current
ShortParentItemName.</summary>
<returns>A 32-bit signed integer that represents the hash
code.</returns>
<remarks>This method overrides Object.GetHashcode and
generates the same hash code for two objects that are equal
according to the Equals method.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>Implements the
ISerializable interface and returns the data needed to
serialize the
Vector
class.</summary>
<remarks>This method implements the ISerializable
interface.</remarks>
<param name="info">A
SerializationInfo object.</param>
<param name="context">A
StreamingContext structure.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.HasINFs">
<summary>Returns a value indicating whether the current vector
contains any elements that evaluate to negative or
positive infinity.</summary>
<returns>true if any of the vector elements evaluates
to negative or positive infinity;
otherwise false.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.HasNaNs">
<summary>Returns a value indicating whether the current vector
contains any elements that evaluate to NaN
values.</summary>
<returns>true if any of the vector elements evaluates
to a NaN value; otherwise
false.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.IsFinite">
<summary>Returns a value indicating whether the current vector
contains any elements that evaluate either to NaN
or to negative or positive
infinity.</summary>
<returns>true if all elements of the current vector
have a value other NaN, negative
infinity, positive
infinity; otherwise false.</returns>
<remarks> Most of the internal routines expect that input matrices
or vectors do not contain any negative infinity, positive
infinity, or NaN values in order to perform
flawlessly.
If you suspect that the current matrix or vector may
contain any NaN or infinity
values, use the IsFinite method before any
further processing.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Multiply">
<summary>Multiplies vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Multiply(Bluebit.MatrixLibrary.Vector,System.Double)">
<summary>Multiplies a vector by a scalar.</summary>
<returns>A
Vector
object representing the result of the vector-scalar
multiplication.</returns>
<param name="vector">A
Vector
instance representing the vector to multiply by the scalar.</param>
<param name="scalar">A
double value representing the scalar by which to multiply the
vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Multiply(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Multiplies two vectors.</summary>
<returns>A
Vector
object that represents the result of the multiplication.</returns>
<param name="vector1">A
Vector
instance on the left side of the multiplication operator.</param>
<param name="vector2">A
Vector
instance on the right side of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Norm">
<summary>Returns the Euclidean norm of the vector.</summary>
<returns>A
double equal to the Euclidean norm of the vector.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Normalize(Bluebit.MatrixLibrary.NormalizeMode)">
<summary>Normalizes the current vector according to the specified
mode.</summary>
<remarks> The following table lists the values of
NormalizeMode enumeration and their effect on vector
normalization.
Member
Description
MaximumOne
Normalizes vector elements so that the
biggest element is 1.
UnitLength
Normalizes the vector so that it
becomes a unit length vector(the sum of squares of
vector elements is 1).
ZScores
Normalizes vector elements to zscores
(values having zero mean and unit standard
deviation).
</remarks>
<param name="mode">A
NormalizeMode enumeration value indicating how this vector will
be normalized.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Addition">
<summary>Adds real vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Addition(System.Double,Bluebit.MatrixLibrary.Vector)">
<summary>Adds a scalar and a real vector.</summary>
<returns>A
Vector
object representing the result of the addition.</returns>
<param name="scalar">A
double representing the scalar on the left side of the addition
operator.</param>
<param name="vector">A
Vector
instance on the right side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Addition(Bluebit.MatrixLibrary.Vector,System.Double)">
<summary>Adds a real vector and a scalar.</summary>
<returns>A
Vector
object representing the result of the addition.</returns>
<param name="vector">A
Vector
instance on the left side of the addition operator.</param>
<param name="scalar">A
double representing the scalar on the right side of the
addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Addition(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Adds two real vectors.</summary>
<returns>A
Vector
object representing the result of the addition.</returns>
<param name="vector1">A
Vector
instance on the left side of the addition operator.</param>
<param name="vector2">A
Vector
instance on the left side of the addition operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Division">
<summary>Divides real vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Division(System.Double,Bluebit.MatrixLibrary.Vector)">
<summary>Divides a scalar by a real vector.</summary>
<returns>A
Vector
object representing the result of the scalar-vector
division.</returns>
<param name="scalar">A
double representing the scalar on the left of the division
operator.</param>
<param name="vector">A
Vector
object representing the vector on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Division(Bluebit.MatrixLibrary.Vector,System.Double)">
<summary>Divides a real vector by a scalar.</summary>
<returns>A
CVector
object representing the result of the vector-scalar
division.</returns>
<param name="vector">A
CVector
object representing the vector on the left of the division
operator.</param>
<param name="scalar">A
href="Bluebit.MatrixLibrary~Bluebit.MatrixLibrary.complex.html">Complex
representing the scalar on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Division(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Divides two real vectors.</summary>
<returns>A
CVector
object representing the result of the vector-vector
division.</returns>
<param name="vector1">A
CVector
object representing the vector on the left of the division
operator.</param>
<param name="vector2">A
CVector
object representing the vector on the right of the division
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Equality(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Tests whether two
Vector
objects represent equal vectors.</summary>
<returns>true if vectors are equal; otherwise
false.</returns>
<remarks> The equality operator returns false if
vectors are not of the same length.
The elements of the compared vectors must be exactly
equal in order to the equality operator return
true.</remarks>
<param name="vector1">A
Vector
instance on the left side of the equality operator.</param>
<param name="vector2">A
Vector
instance on the right side of the equality operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Implicit">
<summary>Converts a
Vector
object.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Implicit(System.Double[])">
<summary>Converts an array of type
double to a
Vector
object.</summary>
<returns>A
Vector
object containing the same values as the array of type
double.</returns>
<param name="array">The array of type
double to convert.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Implicit(Bluebit.MatrixLibrary.Vector)">
<summary>Converts
Vector
to a
Matrix
object.</summary>
<returns>A one-column
Matrix
object containing the same values as the converted
Vector.</returns>
<param name="vector">The
Vector
object to convert.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Inequality(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Tests whether two
Vector
objects represent non equal vectors.</summary>
<returns>true if vectors are not equal; otherwise
false.</returns>
<param name="vector1">A
Vector
instance on the left side of the equality operator.</param>
<param name="vector2">A
Vector
instance on the right side of the equality operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Multiply">
<summary>Multiplies real vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Multiply(System.Double,Bluebit.MatrixLibrary.Vector)">
<summary>Multiplies a scalar by a real vector.</summary>
<returns>A
Vector
object representing the result of the multiplication.</returns>
<param name="scalar">A
double representing the scalar on the left of the
multiplication operator.</param>
<param name="vector">A
Vector
instance on the right of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Multiply(Bluebit.MatrixLibrary.Vector,System.Double)">
<summary>Multiplies a real vector by a scalar.</summary>
<returns>A
Vector
object representing the result of the multiplication.</returns>
<param name="vector">A
Vector
instance on the left of the multiplication operator.</param>
<param name="scalar">A
double representing the scalar on the right of the
multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Multiply(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Multiplies two real vectors.</summary>
<returns>A
Vector
object representing the result of the multiplication.</returns>
<param name="vector1">A
Vector
instance on the left of the multiplication operator.</param>
<param name="vector2">A
Vector
instance on the right of the multiplication operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Subtraction">
<summary>Subtracts real vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Subtraction(System.Double,Bluebit.MatrixLibrary.Vector)">
<summary>Subtracts a real vector from a scalar.</summary>
<returns>A
Vector
object representing the result of the subtraction.</returns>
<param name="scalar">A
double representing the scalar on the left of the subtraction
operator.</param>
<param name="vector">A
Vector
instance on the right of the subtraction operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Subtraction(Bluebit.MatrixLibrary.Vector,System.Double)">
<summary>Subtracts a scalar from a real vector.</summary>
<returns>A
Vector
object representing the result of the subtraction.</returns>
<param name="vector">A
Vector
instance on the left of the subtraction operator.</param>
<param name="scalar">A
double representing the scalar on the right of the subtraction
operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.op_Subtraction(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Subtracts a vector from another vector.</summary>
<returns>A
Vector
instance on the left of the subtraction operator.</returns>
<param name="vector1">A
Vector
instance on the left of the subtraction operator.</param>
<param name="vector2">A
Vector
instance on the right of the subtraction operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Resize(System.Int32)">
<summary>Resizes the vector preserving its content.</summary>
<param name="size">An
integer specifying the new length of the vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Subtract">
<summary>Subtracts real vectors.</summary>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Subtract(System.Double,Bluebit.MatrixLibrary.Vector)">
<summary>Subtracts a real vector from a scalar.</summary>
<returns>A
Vector
object representing the result of the subtraction.</returns>
<param name="scalar">A
double representing the scalar from which to subtract the
vector.</param>
<param name="vector">A
Vector
instance representing the vector to subtract from the
scalar.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Subtract(Bluebit.MatrixLibrary.Vector,System.Double)">
<summary>Subtracts a scalar from a vector.</summary>
<returns>A
Vector
object representing the result of the subtraction.</returns>
<param name="vector">A
Vector
instance from which to subtract the scalar.</param>
<param name="scalar">A
double representing the scalar to subtract from the
vector.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Subtract(Bluebit.MatrixLibrary.Vector,Bluebit.MatrixLibrary.Vector)">
<summary>Subtracts a vector from another vector.</summary>
<returns>A
Vector
object representing the result of the subtraction.</returns>
<param name="vector1">A
Vector
instance on the left of the subtraction operator.</param>
<param name="vector2">A
Vector
instance on the right of the subtraction operator.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.Sum">
<summary>Returns the sum of vector elements.</summary>
<returns>A
double equal to the sum of vector elements.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ToArray">
<summary>Returns an array of type
double containing the same values as the current vector.</summary>
<returns>An array of type
double containing the same values as the current vector.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ToMatrix">
<summary>Converts current vector to a
Matrix
object.</summary>
<returns>A one-column
Matrix
object containing the same values as this vector.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ToString">
<summary>Converts this instance of
Vector
to a formatted string.</summary>
<returns>A formatted
string containing all vector elements.</returns>
<remarks>The "F3" format string is used to format each vector element.
A space character is used as a separator of vector elements. The
right and left borders are set to "| " and " |" strings
respectively. The new line character "\n" is added at the end of
the string.</remarks>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ToString">
<summary>Converts this instance of
Vector
to a formatted string using the default values for format string,
separator, left and right borders, and end of line
characters.</summary>
<remarks>The "F3" format string is used to format each vector element.
A space character is used as a separator of vector elements. The
right and left borders are set to "| " and " |" strings
respectively. The new line character "\n" is added at the end of
the string.</remarks>
<returns>A formatted
string containing all vector elements.</returns>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ToString(System.IFormatProvider,System.String)">
<summary>Converts this instance of ShortParentItemName to a
formatted string specifying culture-specific format information and
a format string.</summary>
<param name="provider"> An
IFormatProvider that supplies culture-specific formatting
information.</param>
<param name="format">A format
string that will be used to convert all matrix elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ToString(System.IFormatProvider,System.String,System.String,System.String,System.String,System.String)">
<summary>Converts this instance of ShortParentItemName to a
formatted string specifying culture-specific format information, a
format string, a separator, left and right borders and end of line
characters.</summary>
<param name="provider"> An
IFormatProvider that supplies culture-specific formatting
information.</param>
<param name="format">A format
string that will be used to convert all matrix elements.</param>
<param name="separator">A
string that will be used to separate matrix elements.</param>
<param name="leftBorder">A
string that will be added at the beginning of each matrix
row.</param>
<param name="rightBorder">A
string that will be added at the end of each matrix row.</param>
<param name="endVector">A
string that will be added at the end of each matrix row.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ToString(System.String)">
<summary>Converts this instance of
Vector
to a formatted string specifying a format string, and using the the
default values for separator, left and right borders, and end of
line characters.</summary>
<remarks>A space character is used as a separator of vector elements.
The left and right borders are set to "| " and " |" strings
respectively. The new line character "\n" is added at the end of
the string.</remarks>
<returns>A formatted
string containing all vector elements.</returns>
<param name="format">A format
href="ms-help://MS.NETFrameworkSDK/cpref/html/frlrfSystemStringClassTopic.htm">string
that will be used to convert all vector elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ToString(System.String,System.String)">
<summary>Converts this instance of
Vector
to a formatted string specifying a format string, and a separator
and using the default values for left and right borders and end of
line characters.</summary>
<returns>A formatted
string containing all vector elements.</returns>
<remarks>The left and right borders are set to "| " and " |" strings
respectively. The new line character "\n" is added at the end of
the string.</remarks>
<param name="format">A format
href="ms-help://MS.NETFrameworkSDK/cpref/html/frlrfSystemStringClassTopic.htm">string
that will be used to convert all vector elements.</param>
<param name="separator">A
string that will be used to separate vector elements.</param>
</member>
<member name="M:Bluebit.MatrixLibrary.Vector.ToString(System.String,System.String,System.String,System.String,System.String)">
<summary>Converts this instance of
Vector
to a formatted string specifying a format string, a separator, left
and right borders and end of line characters.</summary>
<returns>A formatted
string containing all vector elements.</returns>
<param name="format">A format
href="ms-help://MS.NETFrameworkSDK/cpref/html/frlrfSystemStringClassTopic.htm">string
that will be used to convert all vector elements.</param>
<param name="separator">A
string that will be used to separate vector elements.</param>
<param name="leftBorder">A
string that will be added at the beginning of the
string.</param>
<param name="rightBorder">A
string that will be added at the end of the string.</param>
<param name="endVector">A
string that will be added at the end of the string.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.Vector.Data">
<summary>This property is used while serializing and deserializing the
Vector
object and is not intended to be used directly from your
code.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Vector.DataPtr">
<summary>Gets the address of the unmanaged (native) memory block
containing the vector's elements.</summary>
</member>
<member name="P:Bluebit.MatrixLibrary.Vector.Item(System.Int32)">
<summary>Gets or sets a single vector element.</summary>
<remarks>This is the default property of the
Vector
object when using it in Visual Basic. It is the indexer of the
Vector
object when used in C#.</remarks>
<param name="index">A zero based index of the element to get or to set.</param>
</member>
<member name="P:Bluebit.MatrixLibrary.Vector.Length">
<summary>Gets or sets the vector length.</summary>
<remarks>Setting the vector length to new value is the same as using
the
Resize method.</remarks>
</member>
<member name="M:__Delegates.ComplexFunction1Cmp(Bluebit.MatrixLibrary.Complex)">
<summary>A delegate to a method that takes one
complex
as a parameter and returns a
complex.</summary>
<param name="value">A
Complex.</param>
</member>
<member name="M:__Delegates.ComplexFunction1Cmp1Int(Bluebit.MatrixLibrary.Complex,System.Int32)">
<summary>A delegate to a method that takes one
complex
and one
integer parameter and returns a
complex.</summary>
<param name="value">A
Complex.</param>
<param name="index">An
integer.</param>
</member>
<member name="M:__Delegates.ComplexFunction1Cmp2Int(Bluebit.MatrixLibrary.Complex,System.Int32,System.Int32)">
<summary>A delegate to a method that takes one
complex
and two
integer parameters and returns a
complex.</summary>
<param name="value">A
Complex.</param>
<param name="index1">An
integer.</param>
<param name="index2">An
integer.</param>
</member>
<member name="M:__Delegates.ComplexFunction2Cmp(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex)">
<summary>A delegate to a method that takes two
complex
parameters and returns a
complex.</summary>
<param name="value1">A
Complex.</param>
<param name="value2">A
Complex.</param>
</member>
<member name="M:__Delegates.ComplexFunction2Cmp2Int(Bluebit.MatrixLibrary.Complex,Bluebit.MatrixLibrary.Complex,System.Int32,System.Int32)">
<summary>A delegate to a method that takes two
complex
and two
integer parameters and returns a
complex.</summary>
<param name="value1">A
Complex.</param>
<param name="value2">A
Complex.</param>
<param name="index1">An
integer.</param>
<param name="index2">An
integer.</param>
</member>
<member name="M:__Delegates.DoubleFunction1Dbl(System.Double)">
<summary>A delegate to a method that takes one
double parameter and returns a
double.</summary>
<param name="value">A
double.</param>
</member>
<member name="M:__Delegates.DoubleFunction1Dbl1Int(System.Double,System.Int32)">
<summary>A delegate to a method that takes one
double and one
integer parameter and returns a
double.</summary>
<param name="value">A
double.</param>
<param name="index">An
integer.</param>
</member>
<member name="M:__Delegates.DoubleFunction1Dbl2Int(System.Double,System.Int32,System.Int32)">
<summary>A delegate to a method that takes one
double and two
integer parameters and returns a
double.</summary>
<param name="value">A
double.</param>
<param name="index1">An
integer.</param>
<param name="index2">An
integer.</param>
</member>
<member name="M:__Delegates.DoubleFunction2Dbl(System.Double,System.Double)">
<summary>A delegate to a method that takes two
double parameters and returns a
double.</summary>
<param name="value1">A
double.</param>
<param name="value2">A
double.</param>
</member>
<member name="M:__Delegates.DoubleFunction2Dbl2Int(System.Double,System.Double,System.Int32,System.Int32)">
<summary>A delegate to a method that takes two
double and two
integer parameters and returns a
double.</summary>
<param name="value1">A
double.</param>
<param name="value2">A
double.</param>
<param name="index1">An
integer.</param>
<param name="index2">An
integer.</param>
</member>
</members>
</doc>